Skip to content
Console
Menu

Getting Started

Authentication

KV Store

On this page

INVALID_FIELD

A field failed validation.

A field failed validation.

HTTP 400 · gRPC INVALID_ARGUMENT · the error body

#Returned by

MethodScopeWhat it does
access.orgs.listaccess:readLists orgs the caller can see.
access.orgs.createaccess:adminCreates an org. Access assigns the id.
access.orgs.updateaccess:adminUpdates an org.
access.projects.listaccess:readLists projects in an org.
access.projects.createaccess:adminCreates a project. Access assigns the id.
access.projects.updateaccess:adminUpdates a project.
access.envs.listaccess:readLists environments in a project.
access.envs.createaccess:adminCreates an environment. Access assigns the id.
access.envs.updateaccess:adminUpdates an environment.
access.service_enablements.listaccess:readLists the service enablements of a project, one per service.
access.service_enablements.updateaccess:adminEnables or disables a service on a project (spec.enabled).
access.api_keys.listaccess:readLists API keys in an environment, or the org-wide keys of an org.
access.api_keys.createaccess:keys:writeCreates an API key. Access assigns the id.
access.api_keys.updateaccess:keys:writeUpdates an API key.
agents.agents.capture_credentialagents:sessionsCaptures an existing grant for one session and purpose; never issues a key.
agents.agents.rotate_credentialagents:sessionsRotates the captured value under the same handle with generation fencing.
agents.agents.revoke_credentialagents:sessionsRevokes one captured handle. Repeating the revocation is harmless.
agents.agents.listagents:readLists agents.
agents.agents.createagents:writeCreates an agent and its version 1.
agents.agents.updateagents:writeUpdates an agent. A change to spec mints the next AgentVersion; sessions already started keep the version they pinned.
agents.agents.runagents:sessionsAtomically admits a pinned task session, initial event and pending turn.
agents.agent_versions.listagents:readLists an agent's versions, newest first.
agents.agent_sessions.invoke_toolagents:sessionsGuest execution capability authentication, not an Access management key. Preserve any JSON tool result, including scalars and arrays.
agents.agent_sessions.tool_catalogagents:sessionsThe immutable pinned HTTP-tool catalog exposed to the guest's MCP bridge.
agents.agent_sessions.createagents:sessionsStarts a session of an agent, pinned to its current version unless agent_version names another. Requires a secret key until end-user ownership is implemented. The session starts idle; :send starts its first turn.
agents.agent_sessions.listagents:sessionsLists sessions, newest first. With a publishable key, only the caller's end user's sessions.
agents.agent_sessions.archiveagents:sessionsArchives a session: the session and its event log stay readable, but no new turn may start and the session's captured credential handles are revoked. An idle or failed session archives at once; a running turn is refused with INVALID_STATE (interrupt it first). Repeating the call with the same Idempotency-Key returns the same session.
agents.agent_sessions.sendagents:sessionsSends a user message. On an idle or failed session it starts a new turn; while a turn runs it is refused with INVALID_STATE (use :steer). The same Idempotency-Key returns the same event.
agents.agent_sessions.steeragents:sessionsSends a message into the running turn; the agent reads it at its next step. On an idle session it is the same as :send.
agents.agent_sessions.interruptagents:sessionsStops the running turn at its current step. Calls already made keep their results; the session becomes idle. A no-op on an idle session.
agents.agent_sessions.decide_approvalagents:sessionsAnswers a tool call waiting for approval; the turn continues.
agents.agent_sessions.submit_tool_resultagents:sessionsReturns the result of a client tool call; the turn continues.
agents.session_events.listagents:sessionsLists a session's events in sequence order. To follow a session, call again with the filter sequence > N, N the last sequence read; wait holds the call open until a newer event is appended or the wait ends.
agents.memory_stores.listagents:readLists memory stores.
agents.memory_stores.createagents:writeCreates a memory store.
agents.memory_stores.updateagents:writeUpdates a memory store.
agents.memories.listagents:sessionsLists a store's memories, newest first. With a publishable key, only the caller's end user's memories.
agents.memories.createagents:writeWrites a memory.
agents.memories.updateagents:writeChanges a memory's content.
agents.memories.searchagents:sessionsRecalls the memories that best match a query, by hybrid full-text and vector search. With a publishable key, only the caller's end user's memories. A read with a request body, like a query.
agents.owner_pools.listagents:readLists owner pools, newest first.
agents.owner_pools.createagents:adminCreates an owner pool with no members. Its minimums and demotion rules are governance, so the caller needs agents:admin.
agents.owner_pools.updateagents:adminReplaces an owner pool's spec (agents:admin). Members keep their standing; a changed suite or minimum applies from the next :qualify.
agents.owner_pools.qualifyagents:qualifyRecords an admission suite result for an Agent version. The caller holds agents:qualify and is not the principal whose create or update minted the version (PERMISSION_DENIED). Every minimum met: the member is QUALIFIED. Any score missing or below its minimum: the member is recorded REFUSED with the reason. Each qualification is recorded with its suite, suite version, result and caller; a result already recorded for the member is refused with INVALID_FIELD, so a demoted member returns only with a new suite result. A read-only version is refused with PERMISSION_DENIED; a suite or suite version other than the pool's with INVALID_FIELD. Re-qualifying keeps the member's baseline: the baseline belongs to the version and its pinned model.
agents.owner_pools.observeagents:qualifyRecords a live-metric observation for a member and applies the pool's demotion rules (agents:qualify, refused to the version's authors as in :qualify). The platform computes each rule's baseline: the median of the member's first baseline_observations counted observations of the metric, set only when it is finite and positive. Values of a rule metric are lower-is-better and must not be negative. Once the baseline is set, a metric past baseline * (1 + max_regression) demotes a qualified member. Only :qualify brings a demoted member back.
ai.ai_models.listai:readLists the admitted catalog; filter by brand, modality, or model.
artifacts.artifacts.listartifacts:readLists a project's artifacts; filter by digest, kind, or subject.
artifacts.artifacts.createartifacts:writeRegisters an artifact whose bytes were pushed by digest; verification runs after.
artifacts.artifacts.prepare_uploadartifacts:writeMints one short-lived registry credential and the unique image reference for an upload of this project. The repository is derived from the caller's grant and this parent, never from the caller; the tag is unique per call, so uploads of the same project never collide. Push to the reference, then register the pushed digest with CreateArtifact.
assets.assets.listassets:readLists assets. The filter is limited to kind, state, and review_state.
assets.assets.exportassets:readExports every servable variant in the environment as one flat, paged manifest, independent of the keys the code declares. Rejected and retired variants are left out unless filter asks for their review_state. The last page carries a digest a client checks to know it holds the whole set.
assets.assets.generateassets:writeRecords the recipes as assets and generates the variants that are missing. Each call is idempotent and works within a bounded time; call again until pending is 0.
assets.assets.lockassets:readReturns the assets.lock entries and canonical text for the keys the call names, and only those. A read with a request body, like a query.
assets.assets.approve_variantassets:writeApproves one variant and records who approved it.
assets.assets.reject_variantassets:writeRejects one variant. Its slot is freed and the next :generate fills it; the rejected file keeps serving at its URL.
assets.assets.retire_variantassets:writeRetires one variant. Its URL answers 404 from then on and its slot is freed.
auth.auth_configs.updateauth:writeUpdates an auth config.
auth.end_users.listauth:readLists end users.
auth.end_users.createauth:writeCreates an end user.
auth.end_users.updateauth:writeUpdates an end user.
auth.end_users.suspendauth:writeSuspends an end user: sessions are revoked and sign-in is refused.
auth.end_users.reactivateauth:writeReactivates a suspended end user.
auth.end_users.unlockauth:writeClears an end user's sign-in lock (repeated failed sign-ins) now.
auth.end_users.revoke_sessionsauth:writeRevokes every session of an end user.
auth.end_users.attach_external_idauth:writeSets the customer's own id for an end user, once: an unset namespace is written, a set one is never rewritten, and a different value for a set namespace is refused. A namespace holds one id for the life of the user. Erasure removes the ids and remembers their hashes, so a value that belonged to an erased user is never handed to another one.
auth.end_users.findauth:readFinds the one end user of one of the customer's own ids. An id that belongs to no live user of this environment is RESOURCE_NOT_FOUND, the same answer a value erased with its user gives.
auth.sessions.listauth:readLists sessions.
auth.sessions.revokeauth:writeRevokes a session.
auth.identities.listauth:readLists the identities an end user signs in with.
auth.identities.moveauth:writeMoves a federated or device identity from one end user to another, to fix a wrongly linked player. One transaction: the identity changes owner, the sessions of both end users are revoked, and nothing else about either moves (profile, memberships, data). Refused when it would leave the source with no sign-in, unless the source is suspended, and when the target already has an identity of the same provider. The reason is audited with the operator, both end users and the identity's fingerprint. An operator action: an end user's own session cannot call it.
auth.customer_organizations.listauth:readLists customer organizations.
auth.customer_organizations.createauth:writeCreates a customer organization.
auth.customer_organizations.updateauth:writeUpdates a customer organization.
auth.memberships.listauth:readLists memberships.
auth.memberships.createauth:writeCreates a membership.
auth.memberships.updateauth:writeUpdates a membership.
auth.organization_roles.listauth:readLists organization roles.
auth.organization_roles.createauth:writeCreates an organization role.
auth.organization_roles.updateauth:writeUpdates an organization role.
auth.invitations.listauth:readLists invitations.
auth.invitations.createauth:writeCreates an invitation.
auth.invitations.revokeauth:writeRevokes a pending invitation.
auth.invitations.acceptauth:writeAccepts a pending invitation for an end user whose verified email is the invited address, and creates the membership.
auth.email_domains.listauth:readLists email domains.
auth.email_domains.createauth:writeCreates an email domain; the answer names the TXT record to publish.
auth.email_domains.verifyauth:writeLooks up the domain's TXT record now; found, the domain is verified.
auth.oauth_clients.listauth:readLists OAuth clients.
auth.oauth_clients.createauth:writeCreates an OAuth client.
auth.oauth_clients.updateauth:writeUpdates an OAuth client.
auth.oauth_clients.roll_secretauth:writeIssues a new client secret, returned once; the old one verifies until grace_period ends.
billing.meters.listbilling:readLists meters. Anonymous-readable: the pricing page renders from it.
billing.plans.listbilling:readLists the plans the caller can see. Anonymous-readable: the pricing page renders from it.
billing.billing_accounts.listbilling:readLists an org's billing accounts: exactly one, default.
billing.billing_accounts.updatebilling:adminUpdates a billing account: changes plan, spend limit, or billing email.
billing.invoices.record_paymentbilling:payments:recordA seller operator records an externally verified full invoice payment. The platform-only scope cannot be granted by customer owners/admins. The invoice name identifies the customer, not the seller. References are immutable and idempotent per org and method; conflicting reuse is refused.
billing.invoices.listbilling:readLists an org's invoices.
billing.usage_reports.listbilling:readLists an org's usage reports, one per billing period.
billing.usage_reports.querybilling:readQueries usage over any time range, bucketed and grouped: the usage summary the console charts. Reads rollups; never raw events.
billing.budget_leases.listbilling:readLists an org's budget leases.
broker.trust_policies.listbroker:readLists an org's trust policies.
broker.trust_policies.createbroker:adminCreates a trust policy.
broker.trust_policies.updatebroker:adminUpdates a trust policy.
broker.trust_policies.exchange_tokenbroker:exchangeExchanges the caller's Access grant for a short-lived provider credential under a trust policy (RFC 8693 token exchange): a GitHub App installation token for exactly one of the policy's repositories, narrowed to the requested permissions. The grant's principal (for a delegated grant, its accountable principal) must be a policy subject, its actor must match the policy's actors, and it must hold broker:exchange on this policy. Every call writes one TokenExchange record. A permission the Connection lacks is PERMISSION_DENIED with reason CapabilityMissing, never an outage.
broker.token_exchanges.listbroker:readLists the credentials issued under a trust policy, newest first.
build.builds.listbuild:readLists builds in a project.
build.builds.createbuild:runCreates a build: one command or one image over a commit or a tree. The Operation is done when the build reaches a final state. run and image are the short forms.
build.builds.runbuild:runRuns one command over an uploaded tree and settles with its exit code, like the local command. A caller that gets a failure before the command started (BUILD_FAILURE_SETUP_FAILED, NO_CAPACITY) may build locally.
build.builds.build_imagebuild:runBuilds an image, with an SBOM and signed provenance, from a commit or an uploaded tree.
build.build_caches.listbuild:readLists build caches in a project.
build.build_caches.updatebuild:writeUpdates a build cache.
build.build_caches.mint_envbuild:runMints the settings a build that runs elsewhere (a laptop, a CI runner) uses to reach the cache: the sccache, Turbo and crates mirror doors and a short-lived token, as environment variables.
config.config_flags.listconfig:readLists config flags in an environment.
config.config_flags.createconfig:writeCreates a config flag; the Operation is done when every cell serves it.
config.config_flags.updateconfig:writeUpdates a config flag; the change rolls out in waves and the Operation is done when every cell serves it.
config.config_flags.evaluateconfig:evaluateEvaluates config flags of an environment for one evaluation context: each flag's value, and why. Browsers and mobile apps call it with a publishable key holding config:evaluate, which reads values, never rules.
config.config_segments.listconfig:readLists config segments in an environment.
config.config_segments.createconfig:writeCreates a config segment.
config.config_segments.updateconfig:writeUpdates a config segment; every flag naming it follows.
config.config_changes.listconfig:readLists config changes in an environment.
connections.connection_providers.begin_registrationconnections:adminBegins an expiring, one-use GitHub manifest registration ceremony. Open registration_url to POST the bound, prefilled manifest to GitHub. github_organization selects organization ownership. The state-authorized callback is GET /v1/connections/github-manifest:callback?state=...&code=... and returns only provider metadata and an installation URL.
connections.connection_providers.listconnections:readLists an org's connection providers.
connections.connection_providers.updateconnections:adminUpdates a connection provider.
connections.connections.listconnections:readLists an org's connections.
connections.connections.createconnections:writeRecords an installation; the controller confirms it with the provider.
connections.connections.updateconnections:writeUpdates a connection's metadata.
data.objects.putdata:writeWrites an object's bytes, replacing the current version. body is the base64 of the bytes.
data.objects.listdata:readLists a bucket's objects in key order.
data.kv.putdata:writeWrites a value. Without ttl_seconds the namespace default applies; zero means no expiry.
data.kv.listdata:readLists a namespace's values in key order.
data.kv.incrementdata:writeAdds delta (default 1) to an integer value, creating it at zero.
data.kv.get_manydata:readReads up to 1000 keys at once (MGET). Answers one entry per key, in order; an absent or expired key keeps its key and has no value.
data.kv.hash_setdata:writeSets fields of a hash (HSET), creating it.
data.kv.hash_getdata:readReads one field of a hash (HGET); an absent field has no value.
data.kv.hash_get_alldata:readReads every field of a hash (HGETALL).
data.kv.hash_get_manydata:readReads several fields of a hash (HMGET), one per field, in order; an absent field has no value.
data.kv.list_pushdata:writePushes values onto the head of a list (LPUSH), creating it.
data.kv.list_rangedata:readReads a range of a list (LRANGE); negative indexes count from the end.
data.kv.list_popdata:writePops values from the head of a list (LPOP); an emptied list is removed.
data.kv.list_lengthdata:readReads the length of a list (LLEN); an absent key has length zero.
data.kv.zset_adddata:writeAdds members to a sorted set or updates their scores (ZADD), creating it.
data.kv.zset_rangedata:readReads a range of a sorted set by rank, lowest score first (ZRANGE); negative indexes count from the end.
data.kv.zset_scoredata:readReads a member's score (ZSCORE); an absent member has no score.
data.kv.zset_lengthdata:readReads the size of a sorted set (ZCARD); an absent key has size zero.
data.kv.scandata:readWalks a namespace's keys that match a glob (SCAN). Call again with the returned cursor until it is empty.
data.kv.expiredata:writeSets a key's time to live (EXPIRE) without rewriting its value; zero makes it persistent.
data.documents.putdata:writeWrites a document to a search index, replacing the current version.
data.documents.patchdata:writeChanges some fields of a document and keeps the rest: a JSON merge patch (RFC 7396). The version goes up by one.
data.search.querydata:readSearches an index by text, by vector, or both, best match first, with filters and paging.
data.search.multidata:readRuns several searches of one index in one request, 1 to 10, and answers each in request order.
data.databases.listdata:readLists databases in a environment.
data.databases.createdata:writeCreates a database. The Operation is done when the controller settles it.
data.databases.updatedata:writeUpdates a database.
data.kv_namespaces.listdata:readLists kv namespaces in a environment.
data.kv_namespaces.createdata:writeCreates a kv namespace. The Operation is done when the controller settles it.
data.kv_namespaces.updatedata:writeUpdates a kv namespace.
data.buckets.listdata:readLists buckets in a environment.
data.buckets.createdata:writeCreates a bucket. The Operation is done when the controller settles it.
data.buckets.updatedata:writeUpdates a bucket.
data.search_indexes.listdata:readLists search indexs in a environment.
data.search_indexes.createdata:writeCreates a search index. The Operation is done when the controller settles it.
data.search_indexes.updatedata:writeUpdates a search index.
entitlement.entitlements.listentitlement:readLists an org's entitlements: exactly one, default.
events.topics.listevents:readLists topics.
events.topics.createevents:writeCreates a topic.
events.topics.updateevents:writeUpdates a topic.
events.topics.publishevents:publishPublishes CloudEvents into a Topic, atomically. Replaying the same source + id with the same payload returns the stored event; a different payload fails with RESOURCE_ALREADY_EXISTS.
events.events.listevents:readLists events.
events.connectors.listevents:readLists connectors.
events.subscriptions.listevents:readLists subscriptions.
events.subscriptions.createevents:writeCreates a subscription.
events.subscriptions.updateevents:writeUpdates a subscription.
events.queues.listevents:readLists queues.
events.queues.createevents:writeCreates a queue.
events.queues.updateevents:writeUpdates a queue.
events.queues.sendevents:publishEnqueues messages directly, without a Subscription.
events.queues.leaseevents:writeLeases up to max_messages ready messages for the visibility timeout.
events.queues.ackevents:writeAcknowledges leased messages; each is removed. A lease that is stale (expired or superseded) is reported, not applied.
events.queues.nackevents:writeReturns leased messages to the Queue after delay; each nack counts as a delivery.
events.queues.replayevents:writeMoves dead-lettered messages, optionally bounded by dead-letter time, back to ready.
events.webhook_endpoints.listevents:readLists webhook endpoints.
events.webhook_endpoints.createevents:writeCreates a webhook endpoint.
events.webhook_endpoints.updateevents:writeUpdates a webhook endpoint.
events.webhook_endpoints.replayevents:writeRedelivers every dead-lettered delivery to the endpoint created in a time range, each as a new attempt.
events.webhook_deliveries.listevents:readLists webhook deliveries.
events.webhook_deliveries.replayevents:writeRedelivers one delivery now, as a new attempt.
events.inbound_endpoints.listevents:readLists inbound endpoints.
events.inbound_endpoints.createevents:writeCreates an inbound endpoint.
events.inbound_endpoints.updateevents:writeUpdates an inbound endpoint.
events.realtime_channels.listevents:readLists realtime channels.
events.realtime_channels.createevents:writeCreates a realtime channel.
events.realtime_channels.updateevents:writeUpdates a realtime channel.
events.realtime_channels.publishevents:publishPublishes one message to the channel: it is appended to the channel's history and pushed to every connected client. A retry with the same Idempotency-Key returns the first message.
events.realtime_channels.issue_tokenevents:publishMints a subscribe token (rtt_…) for this channel alone, at most an hour long, for a browser or device that holds no key. A token that names a client id enters the channel's presence while it is connected.
events.realtime_messages.listevents:readLists a channel's retained messages, oldest first.
events.realtime_members.listevents:readLists the clients present in a channel now.
hosting.services.listhosting:readLists services in a environment.
hosting.services.createhosting:writeCreates a service. The Operation is done when the controller settles it.
hosting.services.updatehosting:writeUpdates a service.
hosting.service_rollouts.listhosting:readLists rollouts in a service.
hosting.service_rollouts.createhosting:writeCreates a rollout.
hosting.previews.listhosting:readLists previews in a environment.
hosting.previews.createhosting:writeCreates a preview. The Operation is done when the controller settles it.
hosting.source_links.listhosting:readLists source links in a project.
hosting.source_links.createhosting:writeCreates a source link. The Operation is done when the controller settles it.
hosting.source_links.updatehosting:writeUpdates a source link.
keys.keys.listkeys:readLists keys in an environment.
keys.keys.createkeys:writeCreates a key; the signer generates its first version.
keys.keys.updatekeys:writeUpdates a key's rotation period, deletion protection, or metadata.
keys.keys.signkeys:signSigns data or a digest with a SIGN key. Every use is audited.
keys.keys.verifykeys:verifyVerifies a signature made by a SIGN key.
keys.keys.encryptkeys:encryptEncrypts data with an ENCRYPT key.
keys.keys.decryptkeys:decryptDecrypts a ciphertext made by Encrypt with this key.
keys.keys.mac_signkeys:signComputes a MAC of data with a MAC key.
keys.keys.mac_verifykeys:verifyVerifies a MAC made by a MAC key, in constant time.
keys.key_versions.listkeys:readLists a key's versions.
knowledge.spaces.listknowledge:readLists spaces.
knowledge.spaces.createknowledge:writeCreates a space.
knowledge.spaces.updateknowledge:writeUpdates a space.
knowledge.knowledge_schemas.listknowledge:readLists knowledge schemas.
knowledge.knowledge_schemas.createknowledge:writeCreates a knowledge schema.
knowledge.knowledge_schemas.updateknowledge:writeUpdates a knowledge schema. An accepted update publishes a new revision; a change that would invalidate existing records is refused with INVALID_FIELD.
knowledge.episodes.listknowledge:readLists a space's episodes, newest first. The filter is limited to kind and extraction.
knowledge.episodes.createknowledge:writeRecords an episode and returns at once (remember); extraction reads it afterwards.
knowledge.entities.listknowledge:readLists the entities the caller may see. The filter is limited to entity_type and lifecycle.
knowledge.entities.createknowledge:writeCreates an entity in a space. An entity whose external id already names one in the graph is refused with RESOURCE_ALREADY_EXISTS, which names it; use Update with allow_missing to upsert.
knowledge.entities.updateknowledge:writeUpdates an entity. With allow_missing it is the structured upsert (upsert_entity): an entity matched by external_ids is updated, otherwise one is created.
knowledge.entities.mergeknowledge:writeMerges other entities into this one: their facts and external ids resolve to it. The merge is recorded and reversible with :split; it is never a silent rewrite.
knowledge.entities.splitknowledge:writeSplits a merged entity back out of this one, with the facts and external ids it brought.
knowledge.entities.profileknowledge:readReturns one entity's profile in one call (entity): the entity, its current facts in both directions, the entities they name and the recent episodes about it, trimmed to what the caller may see. A read with a request body.
knowledge.entities.recallknowledge:readSearches the graph (recall): hybrid lexical and semantic search over episodes and facts, fused by reciprocal rank, then at most two hops of expansion from the top entities. Returns a context pack with citations, built only from records the caller may see.
knowledge.entities.askknowledge:readAnswers a question through Sylphx AI (ask), from a context pack built only from records the caller may see, with citations to its episodes.
knowledge.relations.listknowledge:readLists a space's facts. The filter is limited to subject, predicate, object and provenance.channel; superseded facts are listed only with show_superseded.
knowledge.relations.createknowledge:writeRecords a fact in a space (relate). A fact that contradicts a current one with the same subject and a single-valued predicate closes the older fact; nothing is overwritten.
knowledge.relations.closeknowledge:writeCloses a fact (close_fact): it stopped holding in the world at valid_end_time. The fact stays readable for questions about the time before the close.
localization.catalogs.listlocalization:readLists catalogs.
localization.catalogs.createlocalization:writeCreates a catalog.
localization.catalogs.updatelocalization:writeUpdates a catalog.
localization.catalogs.synclocalization:writeReads the source files and the committed translations into the catalog, then translates what is new or stale. Each call is idempotent and works within a bounded time; call again until pending is 0.
localization.catalogs.exportlocalization:readReturns the catalog's files per locale in the requested format, with the QA report. A read with a request body, like a query.
localization.entries.listlocalization:readLists catalog entries. The filter is limited to state, locale, and qa_state.
localization.entries.pin_translationlocalization:writeSets the text of one locale as a human override that AI never overwrites. QA runs on the text first; a text with a QA error is rejected with INVALID_FIELD, and the problem lists the findings.
localization.entries.unpin_translationlocalization:writeRemoves the human override of one locale; the next sync may translate it again.
localization.glossaries.listlocalization:readLists glossarys.
localization.glossaries.createlocalization:writeCreates a glossary.
localization.glossaries.updatelocalization:writeUpdates a glossary.
money.price_catalogs.updatebilling:writeUpdates the environment's catalog: its features and products, whole.
money.checkout_policies.updatebilling:writeUpdates the environment's checkout policy, whole.
money.store_connections.listbilling:readLists store connections.
money.store_connections.createbilling:writeCreates a store connection; its credential is sealed and never returned.
money.store_connections.updatebilling:writeUpdates a store connection; a new credential replaces the stored one.
money.store_purchases.verifybilling:writeVerifies a store purchase with the store, binds it to the subject, and returns its record and a signed grant. Re-verifying returns the same record and grant. Called from the app's server with a secret key that holds billing:write; a publishable key cannot call it.
money.store_purchases.client_verifybilling:clientVerifies a store purchase for an app with no server: called with the environment's publishable key (billing:client), the subject is an install id (inst_ and a UUID), and Money completes the purchase with the store (acknowledges or consumes it) so the app never calls the store's server API. Works only on store connections that set client_verify. Re-calling returns the same record and grant.
money.store_purchases.listbilling:readLists store purchases, newest first.
money.customer_subscriptions.listbilling:readLists customer subscriptions, newest first.
money.customer_subscriptions.update_quantitybilling:writeChanges the seat quantity of a web subscription, now, and syncs the processor's subscription item to it. A retry with the same Idempotency-Key (required) and the same request changes nothing twice.
money.customer_subscriptions.change_planbilling:writeMove a web subscription onto another recurring catalog plan.
money.entitlement_grants.listbilling:readLists entitlement grants.
money.entitlement_grants.checkbilling:readAnswers whether a subject holds a feature now, and how much of it.
money.entitlement_grants.createbilling:credits.approveCreates a manual entitlement grant (support, comp, grace). Append-only; needs the approval-class scope. The approver recorded is the key's principal.
money.merchant_accounts.listbilling:readLists merchant accounts.
money.merchant_accounts.connectbilling:writeStarts connecting a Stripe account: returns the processor's authorisation URL for an org owner to open, which the processor's redirect completes. With a restricted key in the request the account connects at once instead, and the connected merchant account comes back in the response.
money.merchant_accounts.updatebilling:writeUpdates the merchant account's own settings: the fields named in update_mask.
money.checkout_sessions.createbilling:writeCreates a hosted checkout for a subject.
money.tax_threshold_statuses.listbilling:readLists where the environment's consumer sales stand against each jurisdiction's digital-services tax registration threshold, per its own window. EU and UK have no threshold and are not tracked.
money.portal_sessions.createbilling:writeCreates a customer portal session for a subject.
money.licence_keys.generatebilling:licence_keys.approveGenerates a licence key: Money creates the Ed25519 key, seals it, and never returns the private half. Needs the approval-class scope, which the developer role does not hold.
money.licence_keys.importbilling:licence_keys.approveImports an existing Ed25519 key (PKCS8), for a key already pinned in shipped clients. Refused unless the expected public key is the imported key's public half.
money.licence_tokens.listbilling:readLists a subject's unexpired offline licence tokens of paid orders, for support. Re-derived from the frozen terms: the same bytes as at purchase.
money.usage_settings.updatebilling:writeUpdates the usage settings, the enforcement switch included. A change is recorded with who made it.
money.usage_tiers.listbilling:readLists usage tiers.
money.usage_tiers.updatebilling:writeCreates or updates a usage tier.
money.usage_reservations.createbilling:metering:writeReserves usage before the work starts. Refused with PLAN_LIMIT_REACHED (spend limit, no payment method) or INVALID_STATE (suspended) only while enforcement is on; while it is dark the reservation is granted and the refusal is recorded.
money.usage_reservations.settlebilling:metering:writeSettles a reservation with what was used; the unused part returns to headroom. A settle after expiry still records the usage.
money.usage_events.createbilling:metering:writeRecords usage directly, only for a meter the merchant marked reservation-optional.
money.usage_events.batch_ingestbilling:metering:ingestRecords a batch of already-incurred usage from the merchant's own servers (Stripe's meter-event model): the caller is a key of the merchant's own org holding the exact grant billing:metering:ingest, which no wildcard covers, and each event names its subject with no subject proof. Each event is keyed by its project, meter, meter version and event id: a replay is a no-op (duplicate), and the same key with different content is a conflict and never counted. One result per event, in request order.
money.usage_events.listbilling:readLists usage events, newest first.
money.usage_events.check_standingbilling:readReads a subject's standing: active, past due or suspended, whether a payment method is on file, headroom and the threshold.
money.credit_grants.createbilling:credits.approveGives a subject credit. Append-only: a change is a new grant that supersedes the old. Refused with INVALID_STATE (tax_treatment_unsupported) for post_tax_settlement while the merchant has automatic tax on.
money.credit_grants.listbilling:readLists credit grants.
money.usage_invoices.listbilling:readLists usage invoices, newest first.
money.usage_invoices.release_collectionbilling:credits.approveReleases a held invoice for collection, audited with who and why. Grant expiry or replacement never does.
money.usage_meters.listbilling:readLists usage meters.
money.usage_meters.updatebilling:writeCreates or updates a usage meter. The unit cannot change once it has recorded usage.
money.usage_meter_prices.createbilling:writeAppends a price to a meter's history. It applies from its effective time on and never rewrites usage already rated.
money.usage_meter_prices.listbilling:readLists meter prices, newest first; filter by meter.
money.revenue_sources.listrevenue:readLists the org's revenue sources, with their freshness.
money.revenue_sources.createrevenue:writeRegisters a revenue source. The money source is implicit and never created here.
money.revenue_sources.updaterevenue:writeRenames, pauses or resumes a revenue source, or changes its settings.
money.revenue_sources.runrevenue:writeSyncs a revenue source now, or backfills a period. A money source fills any booked fact its environment's ledger holds and the facts lack; a paused source, or one whose connector has not shipped yet, is refused (INVALID_STATE).
money.revenue.getrevenue:readGets the org's revenue over a period: totals by day or month, split by source or product, gross or net, in one reporting currency, with the basis of each bucket, the sources that report late, and what has no rate yet. Reads only the daily roll-up, bounded by a 5 second statement timeout. For example sylphx money revenue summary --period mtd --split source.
money.revenue_facts.listrevenue:readLists the org's revenue facts, newest day first, for audit and export.
money.exchange_rates.listrevenue:readLists the exchange rates Money converts at (units per US dollar by day), for any reader that converts revenue.
network.domains.listnetwork:readLists domains in a project.
network.domains.createnetwork:writeCreates a domain. The Operation is done when the controller settles it.
network.domains.updatenetwork:writeUpdates a domain.
network.certificates.listnetwork:readLists certificates in a project.
network.routes.listnetwork:readLists routes in a environment.
network.routes.createnetwork:writeCreates a route. The Operation is done when the controller settles it.
network.routes.updatenetwork:writeUpdates a route.
network.egress_identities.listnetwork:readLists egress identitys in a project.
network.egress_identities.createnetwork:writeCreates an egress identity. The Operation is done when the controller settles it.
network.egress_identities.updatenetwork:writeUpdates an egress identity.
network.private_links.listnetwork:readLists private links in a environment.
network.private_links.createnetwork:writeCreates a private link. The Operation is done when the controller settles it.
network.private_links.updatenetwork:writeUpdates a private link.
notify.mail_domains.listnotify:readLists email domains.
notify.mail_domains.createnotify:writeCreates an email domain.
notify.mail_domains.updatenotify:writeUpdates an email domain.
notify.mail_routes.listnotify:readLists an email domain's routes.
notify.mail_routes.createnotify:writeCreates a route.
notify.mail_routes.updatenotify:writeUpdates a route.
notify.senders.listnotify:readLists senders.
notify.senders.createnotify:writeCreates a sender.
notify.senders.updatenotify:writeUpdates a sender.
notify.recipients.listnotify:readLists recipients.
notify.recipients.createnotify:writeCreates a recipient.
notify.recipients.updatenotify:writeUpdates a recipient.
notify.preferences.listnotify:readLists preferences.
notify.preferences.updatenotify:writeUpdates a preference.
notify.suppressions.listnotify:readLists suppressions.
notify.suppressions.createnotify:writeCreates a suppression.
notify.templates.listnotify:readLists templates.
notify.templates.createnotify:writeCreates a template.
notify.templates.updatenotify:writeUpdates a template.
notify.messages.listnotify:readLists messages.
notify.messages.createnotify:sendSends a Message.
notify.messages.cancelnotify:sendCancels a Message whose deliveries have not been handed off.
notify.mailboxes.listnotify:readLists mailboxes.
notify.mailboxes.createnotify:writeCreates a mailbox.
notify.mailboxes.updatenotify:writeUpdates a mailbox.
notify.mailboxes.erase_addressnotify:writeRemoves an address's personal data from every inbound email of the mailbox that it sent or that names it, keeping the dedupe keys so a poll never brings the mail back.
notify.mailbox_oauth_apps.listnotify:readLists mailbox OAuth apps.
notify.mailbox_oauth_apps.createnotify:writeCreates a mailbox OAuth app.
notify.mailbox_oauth_apps.updatenotify:writeUpdates a mailbox OAuth app.
notify.mailbox_connect_links.listnotify:readLists mailbox connect links.
notify.mailbox_connect_links.createnotify:writeMints a mailbox connect link for one end user; the response carries its url, which no later call returns.
notify.inbound_emails.listnotify:readLists a mailbox's inbound email in feed order, oldest first.
notify.inbox_items.listnotify:readLists inbox items.
notify.inbox_items.mark_readnotify:writeMarks an inbox item read.
notify.inbox_items.mark_unreadnotify:writeMarks an inbox item unread.
notify.inbox_items.archivenotify:writeArchives an inbox item.
notify.broadcasts.listnotify:readLists broadcasts.
notify.broadcasts.createnotify:writeCreates a broadcast.
notify.broadcasts.updatenotify:writeUpdates a broadcast.
notify.broadcasts.sendnotify:sendSends a Broadcast now.
notify.broadcasts.cancelnotify:sendCancels a Broadcast; messages already admitted still deliver.
observability.log_entries.writeobservability:ingestIngests a batch of log entries atomically. The same Idempotency-Key and digest replays the same batch; a different digest under the key conflicts.
observability.log_entries.queryobservability:readQueries the environment's log entries over a bounded interval; follow a trace with trace_id = "...".
observability.traces.write_spansobservability:ingestIngests a batch of spans atomically; a span's parent and time invariants are validated. Replay rules are those of WriteLogEntries.
observability.traces.queryobservability:readQueries the environment's traces over a bounded interval, returning summaries without spans.
observability.generations.listobservability:readLists the environment's Sylphx AI calls, newest first, within the trace retention; filter by request_model, outcome, api_key, start_time, tags.<key> and the other filterable fields.
observability.error_groups.listobservability:readLists error groups; filter by state, service_name, and last_seen_time.
observability.error_groups.captureobservability:ingestCaptures one error occurrence. It is grouped by fingerprint when the caller sets one, else by exception type and the symbolicated in-app stack; release is never part of the group. A new occurrence reopens a resolved group. Secrets and personal data are scrubbed by the environment's Scrubbing Policy before storage. A fingerprint-equal replay bills no second new-error unit. Under quota pressure the response says what to sample. Browsers call it with a publishable key that holds observability:ingest (CORS allowed, rate-limited per environment).
observability.error_groups.acknowledgeobservability:writeAcknowledges an error group.
observability.error_groups.resolveobservability:writeResolves an error group; a new occurrence reopens it.
observability.error_groups.reopenobservability:writeReopens a resolved or acknowledged error group.
observability.error_events.listobservability:readLists error events.
observability.source_maps.createobservability:writeUploads a source map for one release and minified file. Uploading the same release and file again replaces it.
observability.source_maps.listobservability:readLists source maps, newest first; filter by release.
observability.scrubbing_policies.updateobservability:writeUpdates the environment's scrubbing policy.
realtime.namespaces.putrealtime:writeCreates or replaces a namespace's rules. Existing channels follow the new rules from their next message; shortening history trims at the next publish.
realtime.namespaces.listrealtime:readLists the environment's namespaces.
realtime.channels.publishrealtime:publishPublishes a message to a channel. The namespace must exist. The server publishes regardless of client_publish. A repeated Sylphx-Effect-Id publishes once.
realtime.channels.historyrealtime:readLists a channel's messages after a cursor, oldest first. With wait_seconds, an empty result waits up to that long for the first new message and answers as soon as one arrives: this is how an agent subscribes.
realtime.channels.presencerealtime:readLists who is present on a channel.
realtime.tokens.issuerealtime:tokenMints a connection or channel token for an end user. The customer's server calls it with the secret key after authenticating the user, and hands the token to the client.
realtime.bindings.createrealtime:writeBinds a bus Subscription's matching events to a channel: each event the Subscription matches is published to the channel, with the event's CloudEvents type as the message event and its data as the payload. The Subscription itself is an Events Resource (sylphx.events.v1); this call only names the channel it feeds, and replaces the Subscription's earlier binding.
release.releases.listrelease:readLists releases in an environment, newest first by default.
release.releases.createrelease:writeCreates a release: admits it and rolls it out in waves. The Operation is done when the release is live or halted.
release.rollouts.listrelease:readLists rollouts in an environment.
runners.scale_sets.listrunners:readLists scale sets in a org.
runners.scale_sets.createrunners:writeCreates a scale set. The Operation is done when the controller settles it.
runners.scale_sets.updaterunners:writeUpdates a scale set.
runners.runners.listrunners:readLists runners in a scale set.
sandboxes.sandbox_shapes.listsandboxes:readLists shapes.
sandboxes.pools.listsandboxes:readLists pools in a environment.
sandboxes.pools.createsandboxes:writeCreates a pool. The Operation is done when the controller settles it.
sandboxes.pools.updatesandboxes:writeUpdates a pool.
sandboxes.leases.listsandboxes:readLists leases in a environment. Filter on meta.labels (for example labels.agent = "a_123"), status.state, and spec.kind.
sandboxes.leases.createsandboxes:writeCreates a lease: granted now and returned READY (or GRANTED when wait_ready is false), or refused with a typed error. There is no queue.
sandboxes.leases.set_networksandboxes:writeReplaces a running lease's outbound policy. The generation does not change; the new policy applies before the call returns.
sandboxes.leases.actsandboxes:execPerforms computer actions on a DESKTOP, BROWSER, or ANDROID lease, in order, and returns each action's result and, when screenshot is set, the screenshot taken after the last action. The actions are the Anthropic computer tool's and OpenAI computer use's, one-to-one. Refused CONTROL_HELD_BY_HUMAN while a human holds control.
sandboxes.leases.acquire_controlsandboxes:execTakes exclusive input control of a lease's display. A HUMAN acquire preempts an AGENT holder and returns a controller stream; an AGENT acquire is refused CONTROL_HELD_BY_HUMAN while a human holds control. Control lapses at ttl, which the platform caps at 30 minutes.
sandboxes.lease_events.listsandboxes:readLists a lease's events in order. With wait, blocks up to that long for an event after page_token (long poll).
sandboxes.volumes.listsandboxes:readLists volumes in a environment.
sandboxes.volumes.createsandboxes:writeCreates a volume.
sandboxes.volumes.updatesandboxes:writeUpdates a volume: grows spec.size_gib and edits metadata.
sandboxes.snapshots.listsandboxes:readLists snapshots in a environment.
sandboxes.snapshots.createsandboxes:writeCaptures a running lease's disk as a snapshot.
secrets.secrets.listsecrets:readLists secrets in an environment.
secrets.secrets.createsecrets:writeCreates a secret, without a value; add one with CreateSecretVersion.
secrets.secrets.updatesecrets:writeUpdates a secret.
secrets.secret_versions.listsecrets:readLists a secret's versions.
secrets.secret_versions.createsecrets:writeAdds a value to a secret as its newest version. The value is never returned.
secrets.secret_bindings.listsecrets:readLists secret bindings in an environment.
secrets.secret_bindings.createsecrets:writeCreates a secret binding.
secrets.secret_bindings.updatesecrets:writeUpdates a secret binding.
secrets.profiles.listsecrets:readLists the profiles of an environment.
secrets.profiles.createsecrets:writeCreates an empty profile; its first version is written by a write-back mount (:open with WRITE_BACK, then :commit).
secrets.profiles.updatesecrets:writeUpdates a profile's grants or declared paths. Granting a mount is this call: nothing else adds a grant.
secrets.profiles.opensecrets:mountMounts a profile for one session: returns the state of one version and, for WRITE_BACK, an attachment that :commit writes through until it expires. Every call is audited with the caller's context; the caller's principal needs a grant of at least the requested mode.
secrets.profiles.commitsecrets:mountWrites a mounted profile back as a new version, by compare-and-set on the version the attachment was opened at (or last committed). When another write landed first, nothing is lost: the result is still a new version, merged site by site with the newer write winning, and marked as a conflict.
secrets.profile_versions.listsecrets:readLists a profile's versions, newest first.
workflows.workflows.listworkflows:readLists workflows.
workflows.workflows.createworkflows:writeCreates a workflow.
workflows.workflows.updateworkflows:writeUpdates a workflow.
workflows.schedules.listworkflows:readLists schedules.
workflows.schedules.createworkflows:writeCreates a schedule.
workflows.schedules.updateworkflows:writeUpdates a schedule; with allow_missing it creates the schedule when it does not exist, so its short name schedule is an upsert by name.
workflows.schedules.pauseworkflows:writePauses a Schedule: no fire starts a Run until it is resumed.
workflows.schedules.resumeworkflows:writeResumes a paused Schedule; missed fires follow catchup_window.
workflows.runs.listworkflows:readLists runs.
workflows.runs.createworkflows:runStarts a Run of a Workflow, now or after start_delay or at schedule_time. run_id is the caller's key: the same key and intent return the same Run, a changed intent is refused. An end user's session may call it on a Workflow whose callers is USERS when the session holds the Workflow's permission.
workflows.runs.start_batchworkflows:runStarts a batch: a parent Run that fans out one child Run per item, each with a stable index and count.
workflows.runs.signalworkflows:runSends a named signal to a running Run; a wait op for that name resumes with its payload. A signal to a closed Run fails with INVALID_STATE. An end user's session may call it on a Workflow whose callers is USERS when the session holds the Workflow's permission.
workflows.runs.cancelworkflows:runRequests cancellation. Timers and waits stop; a running invocation is not interrupted: the handler receives one final invocation with cancel: true, and the Run ends cancelled when it answers. An end user's session may call it on a Workflow whose callers is USERS when the session holds the Workflow's permission.
workflows.runs.read_historyworkflows:readReads a page of the Run's immutable history, projected to Sylphx events.
workflows.jobs.listworkflows:readLists jobs.
workflows.jobs.createworkflows:writeCreates a job.
workflows.jobs.updateworkflows:writeUpdates a job. Runs already started keep the generation they pinned.
workflows.job_runs.createworkflows:runStarts a run of a Job now. The same Idempotency-Key returns the same run for 24h; a Schedule fire uses {job}:{intended time}. With concurrency forbid, a start while a run is active fails with INVALID_STATE.
workflows.job_runs.listworkflows:readLists a job's runs, newest first.
workflows.distributed_jobs.listworkflows:readLists distributed jobs.
workflows.distributed_jobs.createworkflows:writeCreates a distributed job.
workflows.distributed_jobs.updateworkflows:writeUpdates a distributed job. Runs already started keep the generation they pinned.
workflows.distributed_runs.createworkflows:runStarts a run of a distributed job. The same Idempotency-Key returns the same run for 24h.
workflows.distributed_runs.listworkflows:readLists a distributed job's runs, newest first.
workflows.distributed_runs.add_shardsworkflows:runAppends shards to a run started with an open manifest; close ends the manifest, and the run ends once those shards are done.
workflows.distributed_runs.read_shardsworkflows:readReads a page of the run's shards, in queue order.
workflows.distributed_runs.read_workersworkflows:readReads a page of the run's workers.