Skip to content

List interface types

GET
/v1/interface-types
curl --request GET \
--url https://api.aerandil.com/v1/interface-types \
--header 'Authorization: Bearer <token>'

Schema-discovery surface for the registry’s interfaces — the structural contracts object types implement, each with the properties every implementer must expose and the implementers themselves. An implementer whose local property is named differently carries an explicit interface→local mapping; identity mappings are omitted rather than repeated. Sorted by api_name ascending. Returns next_page_token: null in v1 — ontology size stays under the pagination threshold.

Sorted summary list of every registered interface type.

Media typeapplication/json
object
data
required
Array<object>
object
api_name
required
string
description
string
nullable
display_name
required
string
implementers
required
Array<object>
object
object_type
required
string
property_map

Interface→local property renames. Absent when every name matches: identity entries are omitted, not echoed back.

Array<object>
object
interface_property
required
string
local_property
required
string
required_properties
required

Properties every implementer must expose. An enum requirement matches structurally — the vocabulary itself stays per-implementer.

Array<object>
object
api_name
required
string
data_type
required
One of: discriminator: kind
object
kind
required
string
Allowed value: bool
Allowed values: bool
description
required
string
next_page_token

Opaque cursor for the next page (AIP-158). Reserved for future growth; v1 returns null because the registry size is bounded.

string
nullable
Example
{
"data": [
{
"required_properties": [
{
"data_type": {
"kind": "bool"
}
}
]
}
]
}

The bearer authenticated but does not hold the scope this operation requires.

Media typeapplication/json

Structured error wrapper. Every non-2xx response from any Aerandil endpoint serialises to this shape; the HTTP status carries the failure class (4xx/5xx), the body adds a stable code for programmatic dispatch plus a human-readable message.

object
error
required
object
code
required

Stable, programmatic error code (e.g. unauthorized, forbidden, not_found, invalid_body, invalid_url, precondition_failed, no_secondary_key). Clients dispatch on code, not on the message (which may be localised or contextualised in future versions).

string
instance_id

Request-id correlation handle echoed on the request-id response header — support teams correlate without scraping logs.

string
message
required

Human-readable explanation of the failure.

string
parameters

Per-error structured detail. The shape varies by code (e.g. forbidden_action carries {"action": "..."}; precondition_failed carries {"current_version": N}).

Examplegenerated
{
"error": {
"code": "example",
"instance_id": "example",
"message": "example",
"parameters": "example"
}
}