Skip to content
Console
Menu

Queues

Workflows

Getting Started

Authentication

KV Store

API reference

Every service, collection, method and error code, generated from the contracts.

The Sylphx API is one HTTP API for the whole platform, at https://api.sylphx.com/v1. Every page in this reference is generated from the protobuf contracts in contracts/ — the same contracts the SDKs, the CLI and the Terraform provider come from — so a method that is not here is not served, and a field that is here is a field the API takes.

#Authentication

Every call carries one key in Authorization: Bearer: a secret key (sylphx_sk_…) from a server, or a publishable key (sylphx_pk_…) from a browser or a mobile app. A publishable key reaches only the methods marked callable with a publishable key: 9 of the 536 methods in this reference.

Keys, their kinds and their scopes are in Keys and scopes; the scope a method needs is on its page.

#Names

Everything the API holds is a Resource with one canonical name (AIP-122):

Text
orgs/{org}
orgs/{org}/projects/{project}
orgs/{org}/projects/{project}/envs/{env}
{parent}/{collection}/{id}

The collection segment is a snake_case plural, unique across the whole registry, so it identifies its service on its own. Below the environment the caller names the id on Create (database_id), and the server assigns one when it is omitted. - stands for any parent segment on List (AIP-159). The registry's Resources:

Resource typeCollectionName pattern
access.sylphx.com/ApiKeyapi_keysorgs/{org}/projects/{project}/envs/{env}/api_keys/{api_key}
access.sylphx.com/Environmentenvsorgs/{org}/projects/{project}/envs/{env}
access.sylphx.com/Orgorgsorgs/{org}
access.sylphx.com/Projectprojectsorgs/{org}/projects/{project}
ai.sylphx.com/AiModelai_modelsai_models/{ai_model}
artifacts.sylphx.com/Artifactartifactsorgs/{org}/projects/{project}/artifacts/{artifact}
assets.sylphx.com/Assetassetsorgs/{org}/projects/{project}/envs/{env}/assets/{asset}
auth.sylphx.com/AuthConfigauth_configsorgs/{org}/projects/{project}/envs/{env}/auth_configs/{auth_config}
auth.sylphx.com/CustomerOrganizationcustomer_organizationsorgs/{org}/projects/{project}/envs/{env}/customer_organizations/{customer_organization}
auth.sylphx.com/EmailDomainemail_domainsorgs/{org}/projects/{project}/envs/{env}/customer_organizations/{customer_organization}/email_domains/{email_domain}
auth.sylphx.com/EndUserend_usersorgs/{org}/projects/{project}/envs/{env}/end_users/{end_user}
auth.sylphx.com/Invitationinvitationsorgs/{org}/projects/{project}/envs/{env}/customer_organizations/{customer_organization}/invitations/{invitation}
auth.sylphx.com/Membershipmembershipsorgs/{org}/projects/{project}/envs/{env}/customer_organizations/{customer_organization}/memberships/{membership}
auth.sylphx.com/OauthClientoauth_clientsorgs/{org}/projects/{project}/envs/{env}/oauth_clients/{oauth_client}
auth.sylphx.com/OrganizationRoleorganization_rolesorgs/{org}/projects/{project}/envs/{env}/organization_roles/{organization_role}
auth.sylphx.com/Sessionsessionsorgs/{org}/projects/{project}/envs/{env}/end_users/{end_user}/sessions/{session}
billing.sylphx.com/BillingAccountbilling_accountsorgs/{org}/billing_accounts/{billing_account}
billing.sylphx.com/BudgetLeasebudget_leasesorgs/{org}/budget_leases/{budget_lease}
billing.sylphx.com/Invoiceinvoicesorgs/{org}/invoices/{invoice}
billing.sylphx.com/Metermetersmeters/{meter}
billing.sylphx.com/Planplansplans/{plan}
billing.sylphx.com/UsageReportusage_reportsorgs/{org}/usage_reports/{usage_report}
broker.sylphx.com/TrustPolicytrust_policiesorgs/{org}/trust_policies/{trust_policy}
build.sylphx.com/Buildbuildsorgs/{org}/projects/{project}/builds/{build}
build.sylphx.com/BuildCachebuild_cachesorgs/{org}/projects/{project}/build_caches/{build_cache}
config.sylphx.com/ConfigChangeconfig_changesorgs/{org}/projects/{project}/envs/{env}/config_changes/{config_change}
config.sylphx.com/ConfigFlagconfig_flagsorgs/{org}/projects/{project}/envs/{env}/config_flags/{config_flag}
config.sylphx.com/ConfigSegmentconfig_segmentsorgs/{org}/projects/{project}/envs/{env}/config_segments/{config_segment}
connections.sylphx.com/Connectionconnectionsorgs/{org}/connections/{connection}
connections.sylphx.com/ConnectionProviderconnection_providersorgs/{org}/connection_providers/{connection_provider}
data.sylphx.com/Bucketbucketsorgs/{org}/projects/{project}/envs/{env}/buckets/{bucket}
data.sylphx.com/Databasedatabasesorgs/{org}/projects/{project}/envs/{env}/databases/{database}
data.sylphx.com/KvNamespacekv_namespacesorgs/{org}/projects/{project}/envs/{env}/kv_namespaces/{kv_namespace}
data.sylphx.com/SearchIndexsearch_indexesorgs/{org}/projects/{project}/envs/{env}/search_indexes/{search_index}
entitlement.sylphx.com/Entitlemententitlementsorgs/{org}/entitlements/{entitlement}
events.sylphx.com/Connectorconnectorsorgs/{org}/projects/{project}/envs/{env}/connectors/{connector}
events.sylphx.com/Eventeventsorgs/{org}/projects/{project}/envs/{env}/events/{event}
events.sylphx.com/InboundEndpointinbound_endpointsorgs/{org}/projects/{project}/envs/{env}/inbound_endpoints/{inbound_endpoint}
events.sylphx.com/Queuequeuesorgs/{org}/projects/{project}/envs/{env}/queues/{queue}
events.sylphx.com/RealtimeChannelrealtime_channelsorgs/{org}/projects/{project}/envs/{env}/realtime_channels/{realtime_channel}
events.sylphx.com/RealtimeMemberrealtime_membersorgs/{org}/projects/{project}/envs/{env}/realtime_channels/{realtime_channel}/realtime_members/{realtime_member}
events.sylphx.com/RealtimeMessagerealtime_messagesorgs/{org}/projects/{project}/envs/{env}/realtime_channels/{realtime_channel}/realtime_messages/{realtime_message}
events.sylphx.com/Subscriptionsubscriptionsorgs/{org}/projects/{project}/envs/{env}/subscriptions/{subscription}
events.sylphx.com/Topictopicsorgs/{org}/projects/{project}/envs/{env}/topics/{topic}
events.sylphx.com/WebhookDeliverywebhook_deliveriesorgs/{org}/projects/{project}/envs/{env}/webhook_endpoints/{webhook_endpoint}/webhook_deliveries/{webhook_delivery}
events.sylphx.com/WebhookEndpointwebhook_endpointsorgs/{org}/projects/{project}/envs/{env}/webhook_endpoints/{webhook_endpoint}
hosting.sylphx.com/Previewpreviewsorgs/{org}/projects/{project}/envs/{env}/previews/{preview}
hosting.sylphx.com/Rolloutservice_rolloutsorgs/{org}/projects/{project}/envs/{env}/services/{service}/service_rollouts/{rollout}
hosting.sylphx.com/Serviceservicesorgs/{org}/projects/{project}/envs/{env}/services/{service}
hosting.sylphx.com/SourceLinksource_linksorgs/{org}/projects/{project}/source_links/{source_link}
keys.sylphx.com/Keykeysorgs/{org}/projects/{project}/envs/{env}/keys/{key}
keys.sylphx.com/KeyVersionkey_versionsorgs/{org}/projects/{project}/envs/{env}/keys/{key}/key_versions/{key_version}
localization.sylphx.com/Catalogcatalogsorgs/{org}/projects/{project}/envs/{env}/catalogs/{catalog}
localization.sylphx.com/CatalogEntryentriesorgs/{org}/projects/{project}/envs/{env}/catalogs/{catalog}/entries/{entry}
localization.sylphx.com/Glossaryglossariesorgs/{org}/projects/{project}/envs/{env}/glossaries/{glossary}
money.sylphx.com/CheckoutSessioncheckout_sessionsorgs/{org}/projects/{project}/envs/{env}/checkout_sessions/{checkout_session}
money.sylphx.com/CustomerSubscriptioncustomer_subscriptionsorgs/{org}/projects/{project}/envs/{env}/customer_subscriptions/{customer_subscription}
money.sylphx.com/EntitlementGrantentitlement_grantsorgs/{org}/projects/{project}/envs/{env}/entitlement_grants/{entitlement_grant}
money.sylphx.com/MerchantAccountmerchant_accountsorgs/{org}/projects/{project}/envs/{env}/merchant_accounts/{merchant_account}
money.sylphx.com/PortalSessionportal_sessionsorgs/{org}/projects/{project}/envs/{env}/portal_sessions/{portal_session}
money.sylphx.com/PriceCatalogprice_catalogsorgs/{org}/projects/{project}/envs/{env}/price_catalogs/{price_catalog}
money.sylphx.com/StoreConnectionstore_connectionsorgs/{org}/projects/{project}/envs/{env}/store_connections/{store_connection}
money.sylphx.com/StorePurchasestore_purchasesorgs/{org}/projects/{project}/envs/{env}/store_purchases/{store_purchase}
network.sylphx.com/Certificatecertificatesorgs/{org}/projects/{project}/certificates/{certificate}
network.sylphx.com/Domaindomainsorgs/{org}/projects/{project}/domains/{domain}
network.sylphx.com/EgressIdentityegress_identitiesorgs/{org}/projects/{project}/egress_identities/{egress_identity}
network.sylphx.com/PrivateLinkprivate_linksorgs/{org}/projects/{project}/envs/{env}/private_links/{private_link}
network.sylphx.com/Routeroutesorgs/{org}/projects/{project}/envs/{env}/routes/{route}
notify.sylphx.com/Broadcastbroadcastsorgs/{org}/projects/{project}/envs/{env}/broadcasts/{broadcast}
notify.sylphx.com/EmailDomainmail_domainsorgs/{org}/projects/{project}/envs/{env}/mail_domains/{mail_domain}
notify.sylphx.com/InboundEmailinbound_emailsorgs/{org}/projects/{project}/envs/{env}/mailboxes/{mailbox}/inbound_emails/{inbound_email}
notify.sylphx.com/InboxIteminbox_itemsorgs/{org}/projects/{project}/envs/{env}/recipients/{recipient}/inbox_items/{inbox_item}
notify.sylphx.com/Mailboxmailboxesorgs/{org}/projects/{project}/envs/{env}/mailboxes/{mailbox}
notify.sylphx.com/Messagemessagesorgs/{org}/projects/{project}/envs/{env}/messages/{message}
notify.sylphx.com/Preferencepreferencesorgs/{org}/projects/{project}/envs/{env}/recipients/{recipient}/preferences/{preference}
notify.sylphx.com/Recipientrecipientsorgs/{org}/projects/{project}/envs/{env}/recipients/{recipient}
notify.sylphx.com/Routemail_routesorgs/{org}/projects/{project}/envs/{env}/mail_domains/{mail_domain}/mail_routes/{mail_route}
notify.sylphx.com/Sendersendersorgs/{org}/projects/{project}/envs/{env}/senders/{sender}
notify.sylphx.com/Suppressionsuppressionsorgs/{org}/projects/{project}/envs/{env}/suppressions/{suppression}
notify.sylphx.com/Templatetemplatesorgs/{org}/projects/{project}/envs/{env}/templates/{template}
observability.sylphx.com/ErrorEventerror_eventsorgs/{org}/projects/{project}/envs/{env}/error_groups/{error_group}/error_events/{error_event}
observability.sylphx.com/ErrorGrouperror_groupsorgs/{org}/projects/{project}/envs/{env}/error_groups/{error_group}
observability.sylphx.com/LogEntrylog_entriesorgs/{org}/projects/{project}/envs/{env}/log_entries/{log_entry}
observability.sylphx.com/ScrubbingPolicyscrubbing_policiesorgs/{org}/projects/{project}/envs/{env}/scrubbing_policies/{scrubbing_policy}
observability.sylphx.com/SourceMapsource_mapsorgs/{org}/projects/{project}/envs/{env}/source_maps/{source_map}
observability.sylphx.com/Tracetracesorgs/{org}/projects/{project}/envs/{env}/traces/{trace}
release.sylphx.com/Releasereleasesorgs/{org}/projects/{project}/envs/{env}/releases/{release}
release.sylphx.com/Rolloutrolloutsorgs/{org}/projects/{project}/envs/{env}/rollouts/{rollout}
runners.sylphx.com/Runnerrunnersorgs/{org}/scale_sets/{scale_set}/runners/{runner}
runners.sylphx.com/ScaleSetscale_setsorgs/{org}/scale_sets/{scale_set}
sandboxes.sylphx.com/Leaseleasesorgs/{org}/projects/{project}/envs/{env}/leases/{lease}
sandboxes.sylphx.com/LeaseEventlease_eventsorgs/{org}/projects/{project}/envs/{env}/leases/{lease}/lease_events/{lease_event}
sandboxes.sylphx.com/Poolpoolsorgs/{org}/projects/{project}/envs/{env}/pools/{pool}
sandboxes.sylphx.com/Shapesandbox_shapessandbox_shapes/{shape}
sandboxes.sylphx.com/Snapshotsnapshotsorgs/{org}/projects/{project}/envs/{env}/snapshots/{snapshot}
sandboxes.sylphx.com/Volumevolumesorgs/{org}/projects/{project}/envs/{env}/volumes/{volume}
secrets.sylphx.com/Secretsecretsorgs/{org}/projects/{project}/envs/{env}/secrets/{secret}
secrets.sylphx.com/SecretBindingsecret_bindingsorgs/{org}/projects/{project}/envs/{env}/secret_bindings/{secret_binding}
secrets.sylphx.com/SecretVersionsecret_versionsorgs/{org}/projects/{project}/envs/{env}/secrets/{secret}/secret_versions/{secret_version}
workflows.sylphx.com/DistributedJobdistributed_jobsorgs/{org}/projects/{project}/envs/{env}/distributed_jobs/{distributed_job}
workflows.sylphx.com/DistributedRundistributed_runsorgs/{org}/projects/{project}/envs/{env}/distributed_jobs/{distributed_job}/distributed_runs/{distributed_run}
workflows.sylphx.com/Jobjobsorgs/{org}/projects/{project}/envs/{env}/jobs/{job}
workflows.sylphx.com/JobRunjob_runsorgs/{org}/projects/{project}/envs/{env}/jobs/{job}/job_runs/{job_run}
workflows.sylphx.com/Runrunsorgs/{org}/projects/{project}/envs/{env}/workflows/{workflow}/runs/{run}
workflows.sylphx.com/Scheduleschedulesorgs/{org}/projects/{project}/envs/{env}/schedules/{schedule}
workflows.sylphx.com/Workflowworkflowsorgs/{org}/projects/{project}/envs/{env}/workflows/{workflow}

#Pagination

List methods take page_size (50 by default, at most 1000) and an opaque page_token; the answer carries the items and, when there is more, next_page_token. A token is bound to the parent, the filter, the ordering and the caller, and reusing it otherwise is INVALID_ARGUMENT (PAGE_TOKEN_MISMATCH). The paginated collections:

CollectionListAnswer carries
orgslistorgs, next_page_token
projectslistprojects, next_page_token
envslistenvs, next_page_token
api_keyslistapi_keys, next_page_token
ai_modelslistai_models, next_page_token
artifactslistartifacts, next_page_token
assetslistassets, next_page_token
end_userslistend_users, next_page_token
sessionslistsessions, next_page_token
customer_organizationslistcustomer_organizations, next_page_token
membershipslistmemberships, next_page_token
organization_roleslistorganization_roles, next_page_token
invitationslistinvitations, next_page_token
email_domainslistemail_domains, next_page_token
oauth_clientslistoauth_clients, next_page_token
meterslistmeters, next_page_token
planslistplans, next_page_token
billing_accountslistbilling_accounts, next_page_token
invoiceslistinvoices, next_page_token
usage_reportslistusage_reports, next_page_token
budget_leaseslistbudget_leases, next_page_token
trust_policieslisttrust_policies, next_page_token
buildslistbuilds, next_page_token
build_cacheslistbuild_caches, next_page_token
config_flagslistconfig_flags, next_page_token
config_segmentslistconfig_segments, next_page_token
config_changeslistconfig_changes, next_page_token
connection_providerslistconnection_providers, next_page_token
connectionslistconnections, next_page_token
databaseslistdatabases, next_page_token
kv_namespaceslistkv_namespaces, next_page_token
bucketslistbuckets, next_page_token
search_indexeslistsearch_indexes, next_page_token
entitlementslistentitlements, next_page_token
topicslisttopics, next_page_token
eventslistevents, next_page_token
connectorslistconnectors, next_page_token
subscriptionslistsubscriptions, next_page_token
queueslistqueues, next_page_token
webhook_endpointslistwebhook_endpoints, next_page_token
webhook_deliverieslistwebhook_deliveries, next_page_token
inbound_endpointslistinbound_endpoints, next_page_token
realtime_channelslistrealtime_channels, next_page_token
realtime_messageslistrealtime_messages, next_page_token
realtime_memberslistrealtime_members, next_page_token
serviceslistservices, next_page_token
service_rolloutslistservice_rollouts, next_page_token
previewslistpreviews, next_page_token
source_linkslistsource_links, next_page_token
keyslistkeys, next_page_token
key_versionslistkey_versions, next_page_token
catalogslistcatalogs, next_page_token
entrieslistcatalog_entries, next_page_token
glossarieslistglossaries, next_page_token
store_connectionsliststore_connections, next_page_token
store_purchasesliststore_purchases, next_page_token
customer_subscriptionslistcustomer_subscriptions, next_page_token
entitlement_grantslistentitlement_grants, next_page_token
merchant_accountslistmerchant_accounts, next_page_token
domainslistdomains, next_page_token
certificateslistcertificates, next_page_token
routeslistroutes, next_page_token
egress_identitieslistegress_identities, next_page_token
private_linkslistprivate_links, next_page_token
mail_domainslistemail_domains, next_page_token
mail_routeslistroutes, next_page_token
senderslistsenders, next_page_token
recipientslistrecipients, next_page_token
preferenceslistpreferences, next_page_token
suppressionslistsuppressions, next_page_token
templateslisttemplates, next_page_token
messageslistmessages, next_page_token
mailboxeslistmailboxes, next_page_token
inbound_emailslistinbound_emails, next_page_token
inbox_itemslistinbox_items, next_page_token
broadcastslistbroadcasts, next_page_token
error_groupslisterror_groups, next_page_token
error_eventslisterror_events, next_page_token
source_mapslistsource_maps, next_page_token
releaseslistreleases, next_page_token
rolloutslistrollouts, next_page_token
scale_setslistscale_sets, next_page_token
runnerslistrunners, next_page_token
sandbox_shapeslistsandbox_shapes, next_page_token
poolslistpools, next_page_token
leaseslistleases, next_page_token
lease_eventslistlease_events, next_page_token
volumeslistvolumes, next_page_token
snapshotslistsnapshots, next_page_token
secretslistsecrets, next_page_token
secret_versionslistsecret_versions, next_page_token
secret_bindingslistsecret_bindings, next_page_token
workflowslistworkflows, next_page_token
scheduleslistschedules, next_page_token
runslistruns, next_page_token
jobslistjobs, next_page_token
job_runslistjob_runs, next_page_token
distributed_jobslistdistributed_jobs, next_page_token
distributed_runslistdistributed_runs, next_page_token

#Idempotency

Every mutating method accepts Idempotency-Key (1–255 printable ASCII). The first call runs; a replay of the same request within 24 hours returns the stored answer with Sylphx-Idempotent-Replay: true, a replay with a different body is IDEMPOTENCY_KEY_REUSED (422), and a replay while the first call is still running is IDEMPOTENCY_IN_PROGRESS (409), which is worth retrying.

287 of the 536 methods here have an effect other than read; 22 of them also take validate_only=true (AIP-163), which runs every check a write would run and then writes nothing.

Writes are also guarded by etags: Get answers with an ETag equal to meta.etag, Update and Delete accept If-Match or etag (AIP-154), and a mismatch is ETAG_MISMATCH (409) with the current etag in the error's details, so a client re-reads and retries.

#Errors

A failed call answers with one RFC 9457 problem body carrying a stable code, whether the failure is retryable, and what it did to your data. The body and the retry rules are in Errors; each method page here lists the codes that method can return, and the 33 codes in the registry have a page each in the index below.

#Versions

A request may pin the behaviour it was written against with Sylphx-Version: YYYY-MM-DD; the response echoes the version that was applied. The version stream is in API versions.

#Watch

Long-running work — a deploy, a database creation — is followed through the resource API's streaming surface: a list or a detail view watches GET /v1/{parent}/{collection}:watch as Server-Sent Events, and a reconnect resumes from the SSE Last-Event-ID. The contracts do not declare a watch method yet, so it is not part of this generated reference; a page here documents the request/response surface only.

#Services

ServiceStageWhat it isCollections
Sylphx AccesspreviewSylphx Access: orgs, projects, environments, and API keys. Access is the only writer of these types.orgs, projects, envs, api_keys
Sylphx AIpreviewthe Resource side of Sylphx AI: the model catalog.ai_models
Sylphx Artifactspreview · not available yetSylphx Artifacts: immutable content by digest, with its SBOM and provenance. Sylphx Build writes them; Release reads them.artifacts
Sylphx Generated Assetspreview · not available yetSylphx Generated Assets: declare images in code, generate them once, lock them, and serve them from a CDN by content hash. An Asset holds a recipe and its variants; :generate makes what is missing, and :lock returns the assets.lock text a build commits. Generation happens only in these calls, never at build or run time.assets
Sylphx AuthpreviewSylphx Auth's management surface: sign-in for a customer's own users, their sessions, customer organizations, and OAuth clients. Sylphx orgs, members, principals, and keys are Sylphx Access, never Auth. End-user ceremonies (sign-in, recovery, OAuth authorize and token) are protocol endpoints, not Resource methods.auth_configs, end_users, sessions, customer_organizations, memberships, organization_roles, invitations, email_domains, oauth_clients
Sylphx Billingpreview · not available yetSylphx Billing: the meter and plan catalog, each org's billing account and plan, its invoices, usage, and budget leases. Usage arrives through each service's spool, never through this API; no request path calls Billing.meters, plans, billing_accounts, invoices, usage_reports, budget_leases
Sylphx Brokerpreview · not available yetthe credential service: workload identity in, short-lived scoped provider credential out.trust_policies
Sylphx Buildpreview · not available yetSylphx Build: given a repository and a commit, an image with an SBOM and signed SLSA provenance, all written to Sylphx Artifacts by digest.builds, build_caches
Sylphx ConfigpreviewSylphx Config: dynamic configuration and feature flags evaluated in each cell from that cell's snapshot.config_flags, config_segments, config_changes
Sylphx Connectionspreview · not available yetSylphx Connections: Connection Providers and their installations as Resources.connection_providers, connections
Sylphx DatapreviewDataPlaneService is the data plane of Sylphx Data: object bytes, key-value entries (strings, counters, hashes, lists, and sorted sets), and search documents in an environment's buckets, KV namespaces, and search indexes. It is served by Data itself at its origin, not by the Resource API, and is called with the environment's secret key (SYLPHX_API_KEY); the key's org, project, and environment are the tenant. Every call carries a new Sylphx-Effect-Id, which the SDK sends and reuses on retries.objects, kv, documents, search, databases, kv_namespaces, buckets, search_indexes
Sylphx Entitlementpreview · not available yetthe read-only view of Sylphx Entitlement. Billing writes it through the Resource store; this service has no mutation.entitlements
Sylphx EventspreviewSylphx Events: the event bus, queues, outbound and inbound webhooks, and realtime channels. Publish, lease, ack, and delivery run in each cell from that cell's snapshot.topics, events, connectors, subscriptions, queues, webhook_endpoints, webhook_deliveries, inbound_endpoints, realtime_channels, realtime_messages, realtime_members
Sylphx Hostingpreview · not available yetSylphx Hosting: Services that build from source or run an existing Artifact, ship as Releases in waves, get a Preview per pull request, and read their source through a SourceLink.services, service_rollouts, previews, source_links
Sylphx Keyspreview · not available yetSylphx Keys: non-exportable keys on the regional signer. Callers use a key; no method returns key material.keys, key_versions
Sylphx LocalizationpreviewSylphx Localization: translate an app's strings in CI with AI, a translation memory, and a glossary. A Catalog holds the source messages and their translations; :sync translates what is new or changed, and :export returns the files per locale with a QA report. Translation happens only in these calls, never at build or run time.catalogs, entries, glossaries
Sylphx MoneypreviewSylphx Money's customer payments: an app sells to its own users through the stores and processors Money integrates once, and asks one question on its request path, "does this subject have this feature".price_catalogs, store_connections, store_purchases, customer_subscriptions, entitlement_grants, merchant_accounts, checkout_sessions, portal_sessions
Sylphx Networkpreview · not available yetSylphx Network: verified domains, exact routes served by each cell's edge from its snapshot, certificates Sylphx terminates, declared egress addresses, and private links.domains, certificates, routes, egress_identities, private_links
Sylphx NotifypreviewSylphx Notify: messages to people over email, SMS, push, and in-app inbox, with preferences, suppression, templates, and broadcasts. Notify is built on Sylphx Events as an ordinary customer.mail_domains, mail_routes, senders, recipients, preferences, suppressions, templates, messages, mailboxes, inbound_emails, inbox_items, broadcasts
Sylphx ObservabilitypreviewSylphx Observability's log, trace, and error surface: ingest through the emitter-side buffer, tenant-fenced bounded queries, and error-group triage. Observability is only ever a soft dependency.log_entries, traces, error_groups, error_events, source_maps, scrubbing_policies
Sylphx Releasepreview · not available yetSylphx Release: the only deployable unit and the progress of its rollouts. Releases are immutable; there is no Update or Delete.releases, rollouts
Sylphx Runnerspreview · not available yetSylphx Runners: CI runners of a class sylphx-<os>-<size>, one clean Sandboxes lease per job, registered as scale sets on a Sylphx Runners installation. Runners are read-only: GitHub matches jobs to runners, and Runners reports them.scale_sets, runners
Sylphx SandboxespreviewSylphx Sandboxes: isolated machines leased for a bounded time, granted immediately or refused with a typed reason, and destroyed before anyone else can touch them. Every agent-computer surface is here: exec and files, computer actions that map one-to-one onto the Anthropic computer tool and OpenAI computer-use actions and return the post-action screenshot in the same call, CDP, live streams, and human takeover. The streaming guest protocol (E2B envd) is served at status.endpoints.guest_uri.sandbox_shapes, pools, leases, lease_events, volumes, snapshots
Sylphx SecretspreviewSylphx Secrets: write-only, versioned values and the bindings that deliver them. Reading a value back is the separate break-glass permission secrets:access.secrets, secret_versions, secret_bindings
Sylphx WorkflowspreviewSylphx Workflows: durable execution, schedules, timers, and runs. Workflows is the one writer of these types.workflows, schedules, runs, jobs, job_runs, distributed_jobs, distributed_runs

#Service-level methods

A few calls belong to a service rather than to one of its collections, and have a page each:

MethodHTTPScopeWhat it does
access.whoamiGETaccess:whoamiReturns the caller: the principal and the scope of the key or token that authenticated this request. Clients fill their org, project, and env defaults from it; every valid key may call it, whatever its scopes.

#Error codes

Every code the platform declares, with the HTTP status a caller sees and the gRPC status the SDKs report.

CodeHTTPgRPCWhat it means
UNKNOWN_FIELD400INVALID_ARGUMENTThe request has a field the schema does not know.
INVALID_FIELD400INVALID_ARGUMENTA field failed validation.
PAGE_TOKEN_MISMATCH400INVALID_ARGUMENTA page token was reused with different parameters.
IDEMPOTENCY_KEY_REUSED422INVALID_ARGUMENTAn Idempotency-Key was reused with another body.
IDEMPOTENCY_IN_PROGRESS409ABORTEDThe first call with this Idempotency-Key is still running.
ETAG_MISMATCH409ABORTEDThe etag sent does not match the Resource's current etag.
RESOURCE_NOT_FOUND404NOT_FOUNDThe named Resource does not exist or is not visible.
RESOURCE_ALREADY_EXISTS409ALREADY_EXISTSA Resource with this name exists.
UNAUTHENTICATED401UNAUTHENTICATEDNo valid key or token was presented.
PERMISSION_DENIED403PERMISSION_DENIEDThe key lacks the method's permission.
DELETION_PROTECTED400FAILED_PRECONDITIONspec.deletion_protection blocks the delete.
RECONCILE_FAILED400FAILED_PRECONDITIONThe controller reported Stalled or Ready=FALSE.
PLAN_LIMIT_REACHED402FAILED_PRECONDITIONThe plan's limit is reached.
SPEND_LIMIT_REACHED402FAILED_PRECONDITIONThe org's spend limit is reached.
RATE_LIMITED429RESOURCE_EXHAUSTEDThe rate limit is reached; see Retry-After.
INVALID_STATE400FAILED_PRECONDITIONThe Resource is in a state that forbids the call.
INTERNAL500INTERNALAn internal fault; the cause is in Observability by request id.
UNAVAILABLE503UNAVAILABLEThe Resource store, the owning service's backend, or the key verifier's snapshot is unavailable; retry after Retry-After.
UNIMPLEMENTED501UNIMPLEMENTEDThe path or method is not served (yet) at this version.
NOT_YET_PROPAGATED401UNAUTHENTICATEDA key created seconds ago has not reached the cell serving this request yet; retry within active_after_ms.
DEADLINE_EXCEEDED504DEADLINE_EXCEEDEDThe client deadline passed before the work committed.
NOT_FOUND404NOT_FOUNDNo method is served at this path.
CONTRACT_SKEW503UNAVAILABLEThe backend serves another contract image than the API endpoint for this service; the Release rolls them in order.
NO_CAPACITY503UNAVAILABLENo machine can be granted now (immediate-or-fail); retry after Retry-After.
SHAPE_NOT_OFFERED422FAILED_PRECONDITIONThe requested shape or kind is not sold.
STALE_GENERATION409ABORTEDThe call named a lease generation or control epoch that is no longer current.
RESOURCE_IN_USE409FAILED_PRECONDITIONThe Resource is attached to or held by another Resource, for example a volume attached to a running lease.
CONTROL_HELD409FAILED_PRECONDITIONAnother holder has input control of the display.
CONTROL_HELD_BY_HUMAN409FAILED_PRECONDITIONA human has taken over the display; agent input and screenshots are refused until control is released or expires.
INVALID_ID400INVALID_ARGUMENTA name segment is not a current id, and no id map row moves it.
ETAG_CONFLICT400INVALID_ARGUMENTThe If-Match header and the request's etag name different etags; send one, or the same.
VALIDATE_ONLY_NOT_SUPPORTED400INVALID_ARGUMENTThe method has no dry run; a request with validate_only is refused before anything is written.
ID_MOVED500308 on GET/HEAD308 on GET/HEAD: the id in the name moved in the identifiers cut; Location and Sylphx-Moved-To carry the new one, and the body is {"error":"id_moved","old":…,"new":…}, for the 14-day window of the owning service. The Resource-API moved-id resolver answers it in front of every service.