AvianSuite Events API
The Events API from AvianSuite — 2 operation(s) for events.
The Events API from AvianSuite — 2 operation(s) for 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/aviansuite-com:aviansuite-com-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:
title: Stellar Jay HTTP Events API
version: 0.5.0
summary: 'Safe write access for AI agents: an append-only, attributed business fact store.'
description: 'Every change is kept and attributed to the credential that made it. Agents usually connect through the MCP server (docs/mcp.md); this is the HTTP API underneath. Write rules: llm.md.'
license:
name: AGPL-3.0-or-later
identifier: AGPL-3.0-or-later
servers:
- url: https://{store}
variables:
store:
default: store.example.com
security:
- bearer: []
tags:
- name: Events
paths:
/v1/events:
get:
operationId: listEvents
summary: Replay history
description: Requires reader. Capture root from the first page and send it on every later page of the same scan.
parameters:
- name: limit
in: query
schema:
type: integer
minimum: 1
maximum: 1000
default: 100
- name: after
in: query
description: Return events strictly after this hash.
schema:
$ref: '#/components/schemas/Hash'
- name: root
in: query
description: Observed root that bounds the page.
schema:
$ref: '#/components/schemas/Hash'
- name: include_payload
in: query
description: Decrypt and include payloads; pages are then limited to 100 events.
schema:
type: boolean
responses:
'200':
description: One page of events
content:
application/json:
schema:
$ref: '#/components/schemas/EventsPage'
'400':
$ref: '#/components/responses/Error'
'401':
$ref: '#/components/responses/Error'
'403':
$ref: '#/components/responses/Error'
'404':
$ref: '#/components/responses/Error'
'409':
$ref: '#/components/responses/Error'
'429':
$ref: '#/components/responses/Error'
'507':
$ref: '#/components/responses/Error'
tags:
- Events
post:
operationId: appendEvent
summary: Append an event
description: Requires writer. Send the root read just before the write as expected_root, and a stable Idempotency-Key per logical operation. A retry with the same key and the same type, entity_id, command and payload replays the original event.
parameters:
- name: Idempotency-Key
in: header
required: true
schema:
type: string
minLength: 8
maxLength: 200
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AppendRequest'
responses:
'201':
description: Committed
content:
application/json:
schema:
$ref: '#/components/schemas/AppendResult'
'200':
description: Replayed an earlier identical request
content:
application/json:
schema:
$ref: '#/components/schemas/AppendResult'
'400':
$ref: '#/components/responses/Error'
'401':
$ref: '#/components/responses/Error'
'403':
$ref: '#/components/responses/Error'
'409':
$ref: '#/components/responses/Error'
'413':
$ref: '#/components/responses/Error'
'415':
$ref: '#/components/responses/Error'
'429':
$ref: '#/components/responses/Error'
'503':
$ref: '#/components/responses/Error'
tags:
- Events
/v1/events/payloads:
post:
operationId: getPayloads
summary: Fetch selected payloads
description: Requires reader. 1-100 unique event IDs at or before root.
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- root
- event_ids
properties:
root:
$ref: '#/components/schemas/Hash'
event_ids:
type: array
minItems: 1
maxItems: 100
uniqueItems: true
items:
$ref: '#/components/schemas/Hash'
responses:
'200':
description: Payloads in request order
content:
application/json:
schema:
type: object
properties:
root:
$ref: '#/components/schemas/Hash'
payloads:
type: array
items:
type: object
properties:
event_id:
$ref: '#/components/schemas/Hash'
hash:
$ref: '#/components/schemas/Hash'
payload: {}
'400':
$ref: '#/components/responses/Error'
'401':
$ref: '#/components/responses/Error'
'403':
$ref: '#/components/responses/Error'
'409':
$ref: '#/components/responses/Error'
'415':
$ref: '#/components/responses/Error'
'429':
$ref: '#/components/responses/Error'
'500':
$ref: '#/components/responses/Error'
'507':
$ref: '#/components/responses/Error'
tags:
- Events
components:
responses:
Error:
description: Error
content:
application/json:
schema:
type: object
required:
- error
properties:
error:
type: object
required:
- code
- message
properties:
code:
type: string
examples:
- conflict
- permission_denied
- validation_error
- not_found
- rate_limited
- integrity_error
- capacity_exceeded
message:
type: string
schemas:
EventsPage:
type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/Event'
root:
type: string
has_more:
type: boolean
Hash:
type: string
pattern: ^sha256:[0-9a-f]{64}$
AppendResult:
type: object
properties:
hash:
$ref: '#/components/schemas/Hash'
root:
$ref: '#/components/schemas/Hash'
replayed:
type: boolean
Event:
type: object
properties:
event_id:
$ref: '#/components/schemas/Hash'
hash:
$ref: '#/components/schemas/Hash'
type:
type: string
entity_id:
type: string
parents:
type: array
items:
$ref: '#/components/schemas/Hash'
actor:
type: string
role:
type: string
command:
type: string
created_at:
type: string
format: date-time
request_id:
type: string
payload: {}
AppendRequest:
type: object
required:
- type
- command
- payload
- expected_root
properties:
type:
type: string
examples:
- business.fact
entity_id:
type: string
examples:
- customer:42
command:
type: string
examples:
- fact assert
payload:
description: Any JSON. Facts use predicate, value, observed_at, evidence, confidence, supersedes, retracts and reason.
expected_root:
type: string
description: Root read just before this write; "" only for the first event.
securitySchemes:
bearer:
type: http
scheme: bearer
description: A reader, writer, operator or admin token from stellarjay-server add-token.
externalDocs:
url: https://github.com/kyle-visner/stellarjay/blob/main/docs/api.md