Edge Delta AI API
The AI API from Edge Delta — 10 operation(s) for ai.
The AI API from Edge Delta — 10 operation(s) for ai.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/edge-delta-ai-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
description: 'Edge Delta API provides endpoints to manage your configs/integrations/rehydrations and more. Generate an API token to get started: https://app.edgedelta.com/admin/organization#api-tokens'
title: Edge Delta Access AI API
contact:
name: API Support
email: support@edgedelta.com
version: '1.0'
servers:
- url: https://api.edgedelta.com
tags:
- name: AI
paths:
/v1/orgs/{org_id}/clustering/stats:
get:
security:
- ApiKeyAuth: []
description: Returns top log patterns (signatures of log messages) and their stats; count, proportion, sentiment and delta.
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
- description: Edge Delta Common Query Language expression
name: query
in: query
schema:
type: string
- description: If summary true call returns up to 50 interesting clusters with 10 top anomaly, top/bottom delta, top/bottom count. Param size is ignored
name: summary
in: query
schema:
type: boolean
- description: Max number of clusters in response. For AI search, limit should be 20.
name: limit
in: query
schema:
type: string
- description: Lookback period in golang duration format. e.g. '1h'. Either provide from/to or provide lookback/to or just lookback
name: lookback
in: query
schema:
type: string
- description: From datetime in ISO format 2006-01-02T15:04:05.000Z
name: from
in: query
schema:
type: string
- description: To datetime in ISO format 2006-01-02T15:04:05.000Z
name: to
in: query
schema:
type: string
- description: Comma separated fields to group by
name: groupby
in: query
schema:
type: string
- description: Valatility can be new, existing, gone, all. Default is all
name: volatility
in: query
schema:
type: string
- description: Comma separated offsets for delta stat calculation. Each offset is in golang duration format and order of offsets determines order of offset_ fields in cluster stat response. Default value is lookback duration. e.g. '24h'.
name: offset
in: query
schema:
type: string
- description: Window for on demand anomaly calculation histogram series. e.g. '5m', '1h', '2d'. Combined values like '5m3s' are NOT supported.
name: window
in: query
schema:
type: string
- description: Negative param is used to get negative sentiments.
name: negative
in: query
schema:
type: boolean
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/core.ClusterStatResponse'
/v1/orgs/{org_id}/dashboards:
get:
security:
- ApiKeyAuth: []
description: Returns all dashboards of users in the org.
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
- description: Include definitions in the response
name: include_definitions
in: query
schema:
type: boolean
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/dashboard.Dashboard'
/v1/orgs/{org_id}/dashboards/{dashboard_id}:
get:
security:
- ApiKeyAuth: []
description: Returns the dashboard for the given ID.
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
- description: Dashboard ID
name: dashboard_id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/dashboard.Dashboard'
/v1/orgs/{org_id}/events/search:
get:
security:
- ApiKeyAuth: []
description: Search query using Edge Delta events search syntax, for anomaly search query should include event.type:pattern_anomaly
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
- description: Lookback period in golang duration format. e.g. '1h'. Either provide from/to or provide lookback/to or just lookback
name: lookback
in: query
schema:
type: string
- description: From datetime in ISO format 2006-01-02T15:04:05.000Z
name: from
in: query
schema:
type: string
- description: To datetime in ISO format 2006-01-02T15:04:05.000Z
name: to
in: query
schema:
type: string
- description: Edge Delta Common Query Language expression
name: query
in: query
schema:
type: string
- description: Limits the number of logs in the response. Default is 1000. It can be negative to move the cursor prev direction. Wraps to end if the cursor position is 0. For AI search, limit should be 20.
name: limit
in: query
schema:
type: integer
- description: Cursor provided from previous response, pass it to next request so that we can move the cursor with given limit.
name: cursor
in: query
schema:
type: string
- description: Order of the logs in the response, either 'ASC', 'asc', 'DESC' or 'desc'
name: order
in: query
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/core.EventResponse'
/v1/orgs/{org_id}/logs/log_search/search:
get:
security:
- ApiKeyAuth: []
description: Returns time series log data for given query
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
- description: Lookback period in golang duration format. e.g. '1h'. Either provide from/to or provide lookback/to or just lookback
name: lookback
in: query
schema:
type: string
- description: From datetime in ISO format 2006-01-02T15:04:05.000Z
name: from
in: query
schema:
type: string
- description: To datetime in ISO format 2006-01-02T15:04:05.000Z
name: to
in: query
schema:
type: string
- description: Edge Delta Common Query Language expression
name: query
in: query
schema:
type: string
- description: Limits the number of logs in the response. Default is 1000. It can be negative to move the cursor prev direction. Wraps to end if the cursor position is 0. For AI search, limit should be 20.
name: limit
in: query
schema:
type: integer
- description: Scope can be audit or log
name: scope
in: query
schema:
type: string
- description: Cursor provided from previous response, pass it to next request so that we can move the cursor with given limit.
name: cursor
in: query
schema:
type: string
- description: Comma separated list of custom columns to include in the recent search queries
name: custom_columns
in: query
schema:
type: string
- description: Order of the logs in the response, either 'ASC', 'asc', 'DESC' or 'desc'
name: order
in: query
schema:
type: string
- description: Minimum log length to filter for
name: length
in: query
schema:
type: string
- description: Session ID to track the search session
name: sessionId
in: query
schema:
type: string
- description: Page ID to track the pagination state
name: pageId
in: query
schema:
type: string
- description: The boolean to decide whether to save the query in history
name: save
in: query
schema:
type: string
- description: Disable routing for the search
name: disable_routing
in: query
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/core.ArchiveResponseV1'
/v1/orgs/{org_id}/metrics_v2/graph:
get:
security:
- ApiKeyAuth: []
description: Returns metrics with common time series response for the given query.
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
- description: Edge Delta Common Query Language expression
name: query
in: query
schema:
type: string
- description: Lookback period in golang duration format. e.g. '1h'. Either provide from/to or provide lookback/to or just lookback
name: lookback
in: query
schema:
type: string
- description: From datetime in ISO format 2006-01-02T15:04:05.000Z
name: from
in: query
schema:
type: string
- description: To datetime in ISO format 2006-01-02T15:04:05.000Z
name: to
in: query
schema:
type: string
- description: If order_by is specified then metrics are sorted by given field. If no sort is given default sort will be asc
name: order
in: query
schema:
type: string
- description: 'Default is no sorting. If sort is specified then metrics are sorted by their value. Possible values: asc, desc'
name: sort
in: query
schema:
type: string
- description: Limits the number of logs in the response. Default has no limit.
name: limit
in: query
schema:
type: integer
- description: Time range adjustment it can be noop, inclusive or exclusive
name: time_range_adjustment
in: query
schema:
type: string
- description: The boolean to decide whether to save the query in history
name: save
in: query
schema:
type: string
responses:
'200':
description: Common time series response
content:
application/json:
schema:
$ref: '#/components/schemas/core.CommonTimeseriesResponse'
/v1/orgs/{org_id}/pipelines/base:
post:
description: Creates a Pipeline with base configuration according to environment and fleet subtype
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/core.ConfCreateResponse'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/core.BaseConfCreateRequest'
description: Pipeline request
required: true
/v1/orgs/{org_id}/pipelines/{conf_id}/add_source:
post:
description: 'Adds the given source node configuration to the pipeline and connect it to Edgedelta Destination. Saves the updated pipeline configuration without deploying changes.
Example request body for file_input node:
{
"node": {
"name": "my_file_input",
"type": "file_input",
"path": "path/to/my_logs/logs.txt",
"separate_source": true,
"description": "A user-defined description of the Node. Users may add any additional comments describing the function of their node.\nThis is useful to put some notes into the config file since YAML comment lines (\"#\") are not persisted due to automated marshal/unmarshal of YAML. It should be human readable and not too long."
}
}
Example request body for kubernetes_input node:
{
"node": {
"name": "my_k8s_input",
"type": "kubernetes_input",
"include": [
"k8s.pod.name=^apache.*$,k8s.namespace.name=.*web*"
],
"exclude": [
"k8s.namespace.name=^kube-nginx$",
"k8s.pod.name=.*nginx*,k8s.container.name=testing"
],
"auto_detect_line_pattern": true,
"boost_stacktrace_detection": true,
"enable_persisting_cursor": true,
"description": "A user-defined description of the Node. Users may add any additional comments describing the function of their node.\nThis is useful to put some notes into the config file since YAML comment lines (\"#\") are not persisted due to automated marshal/unmarshal of YAML. It should be human readable and not too long."
}
}
Example request body for demo_input node:
{
"node": {
"name": "my_demo_input",
"type": "demo_input",
"events_per_sec": 1,
"log_type": "apache_common",
"description": "A user-defined description of the Node. Users may add any additional comments describing the function of their node.\nThis is useful to put some notes into the config file since YAML comment lines (\"#\") are not persisted due to automated marshal/unmarshal of YAML. It should be human readable and not too long."
}
}'
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
- description: Conf ID
name: conf_id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/configv3.Config'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/pipeline.AddSourceRequest'
description: Source node configuration to add
required: true
/v1/orgs/{org_id}/pipelines/{conf_id}/deploy/{version}:
post:
description: Deploys the pipeline configuration. Version is the timestamp of the Pipeline history. Pipeline history should be called to get the version.
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
- description: Config ID
name: conf_id
in: path
required: true
schema:
type: string
- description: 'Version use lastUpdated field from pipeline in milliseconds timestamp format. Example: 1752190141312. This is the timestamp field of the most recent element in the result of pipeline history. So, pipeline_history should be called before this tool to get the latest version of the pipeline.'
name: version
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/pipeline.GetVisualPipelineResponse'
/v1/orgs/{org_id}/pipelines/{conf_id}/history:
get:
description: Returns the history of a Pipeline configuration. Timestamp of the Pipeline history is used as version when deploying the Pipeline.
tags:
- AI
parameters:
- description: Org ID
name: org_id
in: path
required: true
schema:
type: string
- description: Config ID
name: conf_id
in: path
required: true
schema:
type: string
- description: If true only retrieve latest history
name: only_latest
in: query
schema:
type: boolean
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/core.ConfigHistory'
components:
schemas:
core.ConfMetadata:
type: object
properties:
compound_nodes:
$ref: '#/components/schemas/core.ConfCompoundNodesMetadata'
node_references:
type: array
items:
type: string
telemetry_gen_templates:
type: array
items:
type: string
pipeline.PathOutput:
type: object
properties:
nodes:
description: The name of the nodes to which the path outputs
type: array
items:
type: string
outputDisplayString:
description: A user-readable display string characterizing the `OutputTypes` property
type: string
outputTypes:
description: 'The types of Outputs allowed (e.g. string, log, metric) for this path
For non-compound nodes, these would be the same as the OutputTypes of the node
For compound nodes, these would depend on the processor nodes connected to compound output node'
type: array
items:
$ref: '#/components/schemas/pipeline.NodeDataType'
path:
description: The name of the path. Default paths use an empty string.
type: string
core.PipelineStateSummary:
type: object
properties:
created:
type: string
primary_state:
$ref: '#/components/schemas/core.PipelinePrimaryState'
sub_states:
type: object
additionalProperties:
$ref: '#/components/schemas/core.PipelineSubState'
configv3.KerberosConfig:
type: object
properties:
keytab:
type: string
krb5_conf_path:
description: Path to krb5.conf file
type: string
principal:
type: string
realm:
type: string
sasl_protocol_name:
type: string
configv3.SplunkHECStaticAuth:
type: object
properties:
allowed_indexes:
type: array
items:
type: string
enable_indexer_acknowledgment:
type: boolean
enable_token:
type: boolean
name:
type: string
token:
type: string
configv3.AggregateMetricAggregationOptions:
type: object
properties:
distinct_count_keys:
type: array
items:
type: string
distinct_count_mode:
type: string
configv3.KuduColumn:
type: object
properties:
column_name:
type: string
column_type:
type: string
default_value:
type: string
expression:
type: string
is_key:
type: boolean
required:
type: boolean
configv3.K8sCustomResourceConfig:
type: object
properties:
group:
description: Group is the API group of the custom resource (e.g., "monitoring.coreos.com")
type: string
resource:
description: Resource is the plural resource name (e.g., "prometheusrules")
type: string
version:
description: Version is the API version of the custom resource (e.g., "v1")
type: string
core.DeployStep:
type: object
properties:
command:
type: string
text:
type: string
configv3.PersistentQueue:
type: object
properties:
drain_rate_limit:
type: integer
max_byte_size:
$ref: '#/components/schemas/datasize.Size'
mode:
type: string
path:
type: string
strict_ordering:
type: boolean
core.EventItem:
type: object
properties:
attributes:
type: object
additionalProperties:
type: string
body:
type: string
event_domain:
type: string
event_type:
type: string
resource:
type: object
additionalProperties:
type: string
severity_text:
type: string
timestamp:
type: integer
pipeline.Node:
type: object
required:
- command
- run_interval
properties:
active_request_limit:
type: integer
add_attributes:
type: boolean
add_ingestion_time:
type: boolean
allow_skip_pri_header:
type: boolean
api_version:
type: string
attributes_from_header:
type: array
items:
type: string
auth_password:
description: 'AuthPassword is the authentication password used for this SNMP connection.
Only valid for version "v3" and if "no_auth_no_priv" is not selected for SecurityLevel'
type: string
auth_type:
description: 'AuthType is the type of authentication protocol to use for this SNMP connection.
Only valid for version “v3” and if “no_auth_no_priv” is not selected for SecurityLevel
Valid options: “md5”, “sha”, “sha224”, “sha256”, “sha384”, “sha512”
Default: "md5"'
type: string
auto_detect_line_pattern:
description: For the next 3 bool, should these functionalities stay at the input level?
type: boolean
boost_stacktrace_detection:
type: boolean
brokers:
type: array
items:
type: string
buffer_length:
type: integer
buffer_size:
description: DEPRECATED
allOf:
- $ref: '#/components/schemas/datasize.Size'
capture_request_headers:
type: boolean
channel:
type: string
checkpoint_directory:
type: string
collection_interval:
description: 'CollectionInterval sets how frequently the scraper
should be called and used as the context timeout
to ensure that scrapers don''t exceed the interval.'
type: string
command:
type: string
commit_interval:
type: string
community:
description: 'Community is the SNMP community string to use.
Only valid for versions "v1" and "v2c"
Default: public'
type: string
config:
type: string
connection_string:
type: string
connector_metadata:
description: ConnectorMetadata is used by HTTP input node to denote cloud based HTTP connectors
allOf:
- $ref: '#/components/schemas/configv3.ConnectorMetadata'
consumer_group:
type: string
current_boot_only:
type: boolean
custom_api_version_response:
type: string
custom_resources:
description: CustomResources configures custom CRDs to watch for events
type: array
items:
$ref: '#/components/schemas/configv3.K8sCustomResourceConfig'
data_type:
description: DEPRECATED
type: string
demo_template:
type: string
description:
type: string
disable_classic_metrics:
type: boolean
disable_intermediate_self_telemetry:
type: boolean
discovery:
description: Discovery allows users to deviate from internal discovery logics via defining custom rules
allOf:
- $ref: '#/components/schemas/configv3.InputDiscovery'
docker_mode:
description: DockerMode expects file to be in Docker json log format and automatically extracts "log" fields.
type: boolean
drop_limit:
description: 'DropLimit is the size threshold above which individual items are dropped entirely.
Items larger than this limit are discarded. nil means no dropping.
When both limits are set, DropLimit must be >= TruncateLimit.'
allOf:
- $ref: '#/components/schemas/datasize.Size'
emit_intermediate:
description: EmitIntermediate controls whether to emit intermediate step results
type: boolean
emit_transform:
description: 'EmitTransform contains OTTL statements to transform the final emitted log.
Statements can access: body, attributes, steps["name"].body, variables["key"], webhook_payload["key"]'
type: string
enable_agent_stats_metrics:
type: boolean
enable_gc_metrics:
type: boolean
enable_granular_metrics:
type: boolean
enable_health_check:
type: boolean
enable_health_metrics:
type: boolean
enable_octet_counting:
type: boolean
enable_persisting_cursor:
type: boolean
endpoint_expression:
description: OTTL expression fields for dynamic values
type: string
engine_id:
description: EngineID is the unique identifier for the SNMP engine, used for Trap listener
type: string
event_interval:
type: string
events_per_sec:
type: string
exclude:
type: array
items:
type: string
exclude_units:
type: array
items:
type: string
excluded_paths:
type: array
items:
type: string
extra_args:
type: array
items:
type: string
file_name_filter:
type: string
fingerprint_size:
$ref: '#/components/schemas/datasize.Size'
global_timeout:
description: GlobalTimeout is the maximum total time for the entire workflow execution
type: string
group_id:
type: string
header_expressions:
type: array
items:
$ref: '#/components/schemas/configv3.HeaderExpression'
hec_authentication:
$ref: '#/components/schemas/configv3.SplunkHECAuthentication'
idle_timeout:
type: string
immediate_poll_threshold:
type: integer
include:
type: array
items:
type: string
include_units:
type: array
items:
type: string
included_paths:
type: array
items:
type: string
initial_delay:
description: 'InitialDelay sets the initial start delay for the scraper,
any non positive value is assumed to be immediately.'
type: string
journal_directory:
type: string
journal_namespace:
type: string
journalctl_path:
type: string
limit:
type: integer
line_pattern:
type: string
listen:
type: string
load_reporting:
description: LoadReporting opts the OTLP ingest server into publishing per-server load metrics for resource-aware load balancing
allOf:
- $ref: '#/components/schemas/configv3.LoadReporting'
location:
type: string
log_parsing_mode:
description: LogParsingMode is used for pre-parsing inputs with certain encodings
type: string
log_type:
$ref: '#/components/schemas/flog.Format'
max_batch_size:
$ref: '#/components/schemas/datasize.Size'
max_connection_age_grace:
description: MaxConnectionAgeGrace is the grace window after MaxConnectionAge before the grpc server forcibly closes the connection.
type: string
max_connections:
type: integer
max_connections_per_ip:
type: integer
max_log_size:
$ref: '#/components/schemas/datasize.Size'
max_octets:
type: integer
method:
type: string
metrics:
description: 'Metrics defines what SNMP metrics will be collected for this receiver and is composed of metric
names along with their metric configurations'
type: array
items:
$ref: '#/components/schemas/configv3.MetricConfig'
multiline:
$ref: '#/components/schemas/configv3.SyslogMultiline'
multiline_flush_interval:
description: 'MultilineFlushInterval, when set on a kubernetes_input, docker_input, or
file_input node, overrides the pipeline-level multiline_flush_interval for
that source. Useful when one input has a slower producer than the rest.'
type: string
name:
type: string
non_transparent_framing_trailer:
type: string
otel_tls:
$ref: '#/components/schemas/configv3.OtelTLS'
other_peer_name_exclude_pattern:
type: array
items:
type: string
pagination:
$ref: '#/components/schemas/configv3.HTTPPaginationConfig'
parameter_expressions:
type: array
items:
$ref: '#/components/schemas/configv3.ParameterExpression'
parameters:
type: array
items:
$ref: '#/components/schemas/configv3.Parameter'
partition_ids:
type: array
items:
type: string
path:
type: string
pod_network_cidrs:
type: array
items:
type: string
poll_interval:
type: string
preserve_leading_whitespaces:
type: boolean
preserve_original_timestamp:
type: boolean
preserve_trailing_whitespaces:
type: boolean
privacy_password:
description: 'PrivacyPassword is the authentication password used for this SNMP connection.
Only valid for version “v3” and if "auth_priv" is selected for SecurityLevel'
type: string
privacy_type:
description: 'PrivacyType is the type of privacy protocol to use for this SNMP connection.
Only valid for version “v3” and if "auth_priv" is selected for SecurityLevel
Valid options: “des”, “aes”, “aes192”, “aes256”, “aes192c”, “aes256c”
Default: "des"'
type: string
pull_interval:
type: string
pull_schedule:
type: string
queue_capacity:
type: integer
rate_limit:
description: RateLimit allows users to define rate limiting policies
allOf:
- $ref: '#/components/schemas/configv3.InputRateLimit'
rbac:
description: RBAC configures custom RBAC rules needed to watch custom resources
allOf:
- $ref: '#/components/schemas/configv3.K8sEventRBACConfig'
read_buffer_size:
$ref: '#/components/schemas/datasize.Size'
read_size:
type: integer
read_timeout:
type: string
reader_header_timeout:
description: 'Deprecated: fasthttp has no separate header timeout. ReadTimeout covers the entire request
(headers + body), which is a superset of ReadHeaderTimeout. This field is ignored.'
type: string
redis_address:
description: 'Global Redis connection settings (shared across all steps that enable caching)
RedisAddress is the Redis se
# --- truncated at 32 KB (166 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/edge-delta/refs/heads/main/openapi/edge-delta-ai-api-openapi.yml