Escape Events API
Manage events. The public API provides basic CRUDs operations to manage events.
Manage events. The public API provides basic CRUDs operations to manage events.
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/escape-events-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:
version: 3.0.0
title: Escape Public Asm Events API
description: 'This API enables you to operate [Escape](https://escape.tech/) programmatically.
All requests must be authenticated with a valid API key, provided in the `X-ESCAPE-API-KEY` header.
For example: `X-ESCAPE-API-KEY: YOUR_API_KEY`.
You can find your API key in the [Escape dashboard](https://app.escape.tech/user/).'
servers:
- url: https://public.escape.tech/v3
security:
- apiKey: []
tags:
- name: Events
description: 'Manage events.
The public API provides basic CRUDs operations to manage events.'
paths:
/events:
get:
tags:
- Events
summary: List events
operationId: listEvents
description: List and search events of the organization.
parameters:
- schema:
type: string
description: The cursor to start the pagination from. Returned by the previous page response. If not provided, the first page will be returned.
example: R1BDOlM6NTEwMzk4NTYtNGIyOS00NTlkLTg0ZDYtMWJhYjM0NWMzZjU5
required: false
description: The cursor to start the pagination from. Returned by the previous page response. If not provided, the first page will be returned.
name: cursor
in: query
- schema:
type: integer
minimum: 1
maximum: 100
default: 50
description: The number of items to return per page
example: 50
required: false
description: The number of items to return per page
name: size
in: query
- schema:
type: string
enum:
- DATE
description: The type to sort by
required: false
description: The type to sort by
name: sortType
in: query
- schema:
type: string
enum:
- asc
- desc
default: asc
description: The direction to sort by
required: false
description: The direction to sort by
name: sortDirection
in: query
- schema:
type: string
description: Search term to filter events by name or description
example: event1
required: false
description: Search term to filter events by name or description
name: search
in: query
- schema:
anyOf:
- type: string
- type: array
items:
type: string
description: Filter by scan IDs
example: 00000000-0000-0000-0000-000000000000,00000000-0000-0000-0000-000000000001
required: false
description: Filter by scan IDs
name: scanIds
in: query
- schema:
anyOf:
- type: string
- type: array
items:
type: string
description: Filter by asset IDs
example: 00000000-0000-0000-0000-000000000000,00000000-0000-0000-0000-000000000001
required: false
description: Filter by asset IDs
name: assetIds
in: query
- schema:
anyOf:
- type: string
- type: array
items:
type: string
description: Filter by issue IDs
example: 00000000-0000-0000-0000-000000000000,00000000-0000-0000-0000-000000000001
required: false
description: Filter by issue IDs
name: issueIds
in: query
- schema:
type: array
items:
type: string
enum:
- DEBUG
- ERROR
- INFO
- WARNING
description: Filter by level
required: false
description: Filter by level
name: levels
in: query
- schema:
type: array
items:
type: string
enum:
- AGENT_ACTION
- AGENT_REASONING
- CONFIGURATION
- EXECUTION
description: Filter by stage
required: false
description: Filter by stage
name: stages
in: query
- schema:
type: string
enum:
- 'true'
- 'false'
example: 'true'
description: Filter by attachments
required: false
description: Filter by attachments
name: hasAttachments
in: query
- schema:
type: array
items:
type: string
enum:
- ANY
- EXCHANGE
- GRAPH
- OPENAPI_SPEC
- SCREENSHOT
- SNIPPET
description: Filter by attachments
required: false
description: Filter by attachments
name: attachments
in: query
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
nextCursor:
type:
- string
- 'null'
totalCount:
type: integer
default: 100
example: 20
data:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
description: The id of the event
createdAt:
type: string
description: The date and time the event was created
title:
type: string
description: The title of the event
level:
type: string
enum:
- DEBUG
- ERROR
- INFO
- WARNING
description: The level of the event
stage:
type: string
enum:
- AGENT_ACTION
- AGENT_REASONING
- CONFIGURATION
- EXECUTION
description: The stage of the event
attachments:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
description: The id of the attachment
createdAt:
type: string
description: The date and time the attachment was created
target:
type:
- object
- 'null'
properties:
id:
type: string
format: uuid
description: The id of the target
createdAt:
type: string
description: The date and time the target was created
apiRoute:
type:
- object
- 'null'
properties:
id:
type: string
format: uuid
description: The id of the api route
createdAt:
type: string
description: The date and time the api route was created
name:
type: string
description: The name of the api route
displayName:
type: string
description: The display name of the api route
required:
- id
- createdAt
- name
- displayName
description: The api route of the target
codeFile:
type:
- object
- 'null'
properties:
id:
type: string
format: uuid
description: The id of the code file
language:
type: string
description: The language of the code file
path:
type: string
description: The path of the code file
required:
- id
- language
- path
description: The code file of the target
graphqlResolver:
type:
- object
- 'null'
properties:
id:
type: string
format: uuid
description: The id of the graphql resolver
displayName:
type: string
description: The display name of the graphql resolver
name:
type: string
description: The name of the graphql resolver
required:
- id
- displayName
- name
description: The graphql resolver of the target
port:
type:
- object
- 'null'
properties:
id:
type: string
format: uuid
description: The id of the port
port:
type: number
description: The port number
protocol:
type: string
description: The protocol
required:
- id
- port
- protocol
description: The port of the target
required:
- id
- createdAt
- apiRoute
- codeFile
- graphqlResolver
- port
description: The target of the attachment
required:
- id
- createdAt
- target
description: The attachments of the event
required:
- id
- createdAt
- title
- level
- stage
title: EventSummarized
description: Summarized information about an event
required:
- nextCursor
- data
'400':
description: Pagination error
content:
application/json:
schema:
type: object
properties:
message:
type: string
enum:
- Invalid cursor
details:
type: string
required:
- message
- details
title: PaginationError
description: Returned when an invalid pagination cursor is supplied
/events/{eventId}:
get:
tags:
- Events
summary: Get an event
operationId: getEvent
description: Get an event by ID (including attachments)
parameters:
- schema:
type: string
description: The event ID
example: 00000000-0000-0000-0000-000000000000
required: true
description: The event ID
name: eventId
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
id:
type: string
format: uuid
description: The id of the event
createdAt:
type: string
description: The date and time the event was created
description:
type: string
description: The description of the event
attachments:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
description: The id of the attachment
createdAt:
type: string
description: The date and time the attachment was created
exchange:
type:
- object
- 'null'
properties:
createdAt:
type: string
description: The date and time the exchange was created
curl:
type: string
description: The curl of the exchange
duration:
type: number
description: The duration of the exchange
id:
type: string
format: uuid
description: The id of the exchange
inferredScalars:
type: array
items:
type: object
properties:
confidence:
type: number
description: The confidence of the inferred scalar
kind:
type: string
description: The kind of the inferred scalar
name:
type: string
description: The name of the inferred scalar
required:
- confidence
- kind
- name
title: InferredScalarDetailed
description: Detailed information about an inferred scalar
description: The inferred scalars of the exchange
responseBody:
type: string
description: The response body of the exchange
responseHeaders:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the http header
values:
type: array
items:
type: string
description: The values of the http header
required:
- name
- values
title: HttpHeaderDetailed
description: Detailed information about a http header
description: The response headers of the exchange
responseStatusCode:
type: number
description: The response status code of the exchange
url:
type: string
description: The url of the exchange
required:
- createdAt
- curl
- duration
- id
- inferredScalars
- responseBody
- responseHeaders
- responseStatusCode
- url
title: ExchangeDetailed
description: The exchange of the attachment
generatedOpenapiSpec:
type:
- object
- 'null'
properties:
id:
type: string
format: uuid
description: The id of the generated openapi spec
createdAt:
type: string
description: The date and time the generated openapi spec was created
temporarySignedUrl:
type: string
description: The temporary signed url of the generated openapi spec
required:
- id
- createdAt
- temporarySignedUrl
title: GeneratedOpenapiSpecDetailed
description: The generated openapi spec of the attachment
graph:
type:
- object
- 'null'
properties:
id:
type: string
format: uuid
description: The id of the graph
createdAt:
type: string
description: The date and time the graph was created
temporarySignedUrl:
type: string
description: The temporary signed url of the graph
required:
- id
- createdAt
- temporarySignedUrl
title: GraphDetailed
description: The graph of the attachment
screenshot:
type:
- object
- 'null'
properties:
alt:
type:
- string
- 'null'
description: The alt of the screenshot
createdAt:
type: string
description: The date and time the screenshot was created
id:
type: string
format: uuid
description: The id of the screenshot
temporarySignedUrl:
type: string
description: The temporary signed url of the screenshot
required:
- alt
- createdAt
- id
- temporarySignedUrl
title: ScreenshotDetailed
description: The screenshot of the attachment
snippet:
type:
- object
- 'null'
properties:
createdAt:
type: string
description: The date and time the snippet was created
id:
type: string
format: uuid
description: The id of the snippet
language:
type: string
description: The language of the snippet
name:
type: string
description: The name of the snippet
snippet:
type: string
description: The snippet of the snippet
url:
type:
- string
- 'null'
description: The url of the snippet
required:
- createdAt
- id
- language
- name
- snippet
- url
title: SnippetDetailed
description: The snippet of the attachment
target:
type:
- object
- 'null'
properties:
createdAt:
type: string
description: The date and time the target was created
apiRoute:
type:
- object
- 'null'
properties:
blacklisted:
type: boolean
description: Whether the api route is blacklisted
createdAt:
type: string
description: The date and time the api route was created
displayName:
type: string
description: The display name of the api route
id:
type: string
format: uuid
description: The id of the api route
name:
type: string
description: The name of the api route
operation:
type: string
description: The operation of the api route
parameters:
type:
- object
- 'null'
additionalProperties:
type: string
description: The parameters of the api route
requestCount:
type: number
description: The request count of the api route
meanDuration:
type:
- number
- 'null'
description: Mean HTTP duration for this route in milliseconds, when available
coverage:
type:
- string
- 'null'
enum:
- BROKEN_PIPE
- NOT_FOUND
- OK
- RATE_LIMIT
- REDIRECTION
- REPEATER_ERROR
- SERVER_ERROR
- TIMEOUT
- UNAUTHORIZED
- UNKNOWN
- VALIDATION_ERROR
- null
description: Coverage status for this REST endpoint (e.g. OK, UNAUTHORIZED, BLOCKLISTED)
coverageByUser:
type:
- array
- 'null'
items:
type: object
properties:
name:
type: string
description: User or session label associated with this target entry
coverage:
type: string
enum:
- BROKEN_PIPE
- NOT_FOUND
- OK
- RATE_LIMIT
- REDIRECTION
- REPEATER_ERROR
- SERVER_ERROR
- TIMEOUT
- UNAUTHORIZED
- UNKNOWN
- VALIDATION_ERROR
description: Coverage status for that user/session
required:
- name
- coverage
title: CoverageByUserEntry
description: Per-user or per-session coverage breakdown when available
returnType:
type:
- string
- 'null'
description: The return type of the api route
source:
type: string
enum:
- SOURCE_INFERRED
- SOURCE_SPECIFICATION
description: The source of the api route
required:
- blacklisted
- createdAt
- displayName
- id
- name
- operation
- requestCount
- coverage
- source
title: ApiRouteDetailed
description: The api route of the target
codeFile:
type:
- object
- 'null'
properties:
id:
type: string
format: uuid
description: The id of the code file
language:
type: string
description: The language of the code file
path:
type: string
description: The path of the code file
required:
- id
- language
- path
title: CodeFileDetailed
description: The code file of the target
graphqlResolver:
type:
- object
- 'null'
properties:
blacklisted:
type: boolean
description: Whether the graphql resolver is blacklisted
createdAt:
type: string
description: The date and time the graphql resolver was created
displayName:
type: string
description: The display name of the graphql resolver
id:
type: string
format: uuid
description: The id of the graphql resolver
name:
type: string
description: The name of the graphql resolver
parameters:
type:
- object
- 'null'
additionalProperties:
type: string
description: The parameters of the graphql resolver
requestCount:
type: number
description: The request count for this resolver
meanDuration:
type:
- number
- 'null'
# --- truncated at 32 KB (61 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/escape/refs/heads/main/openapi/escape-events-api-openapi.yml