Operations
canonical: spec/v1/artifacts/registry/contract-registry.json#operation_registry
· catalog version 2026-10-09.4
· interactive HTTP shape: /openapi/
service_discovery · surface class core
Base interoperable surfaces used for documentation and lint; v1 support does not imply wire reachability without explicit supported_operation_bundles advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.server.read.describe.v1 | GET /_arkret/describe | Server/Describe | server.query.describe |
identity_registry · surface class core
Base interoperable surfaces used for documentation and lint; v1 support does not imply wire reachability without explicit supported_operation_bundles advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.root.identity.registry.read.describe.v1 | GET /_arkret/root/identity/describe | RootIdentity/DescribeRegistry | root.identity.registry.query.describe |
ak.root.identity.read.resolve.v1 | POST /_arkret/root/identity/resolve | RootIdentity/Resolve | root.identity.query.resolve |
ak.root.identity.document.resource.get.v1 | GET /_arkret/root/identity/document | RootIdentity/GetDocument | root.identity.document.resource.get |
ak.root.identity.log.read.list.v1 | GET /_arkret/root/identity/log | RootIdentity/GetLog | root.identity.log.query.list |
ak.root.identity.receipts.read.list.v1 | GET /_arkret/root/identity/receipts | RootIdentity/GetReceipts | root.identity.receipts.query.list |
ak.root.identity.command.submit_did_operation.v1 | POST /_arkret/root/identity/submit-did-operation | RootIdentity/SubmitDidOperation | root.identity.command.submit_did_operation |
ak.root.identity.service_registration.command.ensure.v1 | POST /_arkret/root/identity/service-registrations:ensure | RootIdentity/EnsureServiceRegistration | root.identity.service_registration.command.ensure |
ak.root.identity.service_registration.resource.get.v1 | GET /_arkret/root/identity/service-registrations | RootIdentity/GetServiceRegistration | root.identity.service_registration.resource.get |
ak.root.identity.organization_registration.command.prepare.v1 | POST /_arkret/root/identity/organization-registrations:prepare | RootIdentity/PrepareOrganizationRegistration | root.identity.organization_registration.command.prepare |
ak.root.identity.organization_registration.command.ensure.v1 | POST /_arkret/root/identity/organization-registrations:ensure | RootIdentity/EnsureOrganizationRegistration | root.identity.organization_registration.command.ensure |
ak.root.identity.organization_registration.resource.get.v1 | GET /_arkret/root/identity/organization-registrations | RootIdentity/GetOrganizationRegistration | root.identity.organization_registration.resource.get |
ak.root.identity.organization_registration.command.refresh.v1 | POST /_arkret/root/identity/organization-registrations:refresh | RootIdentity/RefreshOrganizationRegistration | root.identity.organization_registration.command.refresh |
ak.root.identity.organization_registration.command.revoke.v1 | POST /_arkret/root/identity/organization-registrations:revoke | RootIdentity/RevokeOrganizationRegistration | root.identity.organization_registration.command.revoke |
ak.root.identity.recovery_policy.resource.get.v1 | GET /_arkret/root/identity/recovery-policy | RootIdentity/RecoveryPolicyGet | root.identity.recovery_policy.resource.get |
ak.root.identity.recovery_policy.command.publish.v1 | POST /_arkret/root/identity/recovery-policy | RootIdentity/RecoveryPolicyPublish | root.identity.recovery_policy.command.publish |
ak.root.identity.recovery_session.command.create.v1 | POST /_arkret/root/identity/recovery-sessions | RootIdentity/RecoverySessionCreate | root.identity.recovery_session.command.create |
ak.root.identity.recovery_session.resource.get.v1 | GET /_arkret/root/identity/recovery-sessions/{recovery_session_id} | RootIdentity/RecoverySessionGet | root.identity.recovery_session.resource.get |
ak.root.identity.recovery_session.command.submit_proof.v1 | POST /_arkret/root/identity/recovery-sessions/{recovery_session_id}/proofs | RootIdentity/RecoverySessionSubmitProof | root.identity.recovery_session.command.submit_proof |
security_transactions · surface class core
Base interoperable surfaces used for documentation and lint; v1 support does not imply wire reachability without explicit supported_operation_bundles advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.security_transaction.command.create.v1 | POST /_arkret/self/security-transactions | SelfSecurityTransactions/Create | self.security_transaction.command.create |
ak.self.security_transaction.resource.get.v1 | GET /_arkret/self/security-transactions/{transaction_id} | SelfSecurityTransactions/Get | self.security_transaction.resource.get |
ak.self.security_transaction.command.continue.v1 | POST /_arkret/self/security-transactions/{transaction_id}/continue | SelfSecurityTransactions/Continue | self.security_transaction.command.continue |
events_sync · surface class core
Base interoperable surfaces used for documentation and lint; v1 support does not imply wire reachability without explicit supported_operation_bundles advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.events.command.submit.v1 | POST /_arkret/self/events | SelfEvents/Submit | self.events.command.submit |
ak.self.committed_event.resource.get.v1 | GET /_arkret/self/committed-events/{event_id} | SelfCommittedEvent/Get | self.committed_event.resource.get |
ak.self.events.read.delivery_status.v1 | QUERY /_arkret/self/events/delivery-status | SelfEvents/DeliveryStatus | self.events.read.delivery_status |
ak.self.committed_event.read.scan.v1 | POST /_arkret/self/streams/scan | SelfStreams/Scan | self.streams.read.scan |
ak.self.committed_event.stream.subscribe.v1 | GET /_arkret/self/committed-events/subscribe | SelfCommittedEvent/Subscribe | self.committed_event.stream.subscribe |
ak.self.account.read.describe.v1 | GET /_arkret/self/account/describe | SelfAccount/Describe | self.account.query.describe |
ak.self.account.read.viewer.v1 | GET /_arkret/self/account/viewer | SelfAccount/Viewer | self.account.query.viewer |
ak.self.account.command.update_profile.v1 | POST /_arkret/self/account/profile | SelfAccount/UpdateProfile | self.account.command.update_profile |
ak.self.actor_profile.read.resolve.v1 | POST /_arkret/self/actor-profiles/query | SelfActorProfile/Resolve | self.actor_profile.query.resolve |
ak.self.account.stream.subscribe.v1 | GET /_arkret/self/account/subscribe | SelfAccount/Subscribe | self.account.stream.subscribe |
ak.self.account.command.revoke_cursor.v1 | POST /_arkret/self/account/cursor/revoke | SelfAccount/CursorRevoke | self.account.command.revoke_cursor |
ak.self.realm_state_snapshot.read.by_ref.v1 | GET /_arkret/self/realm-state-snapshot/{snapshot_id} | SelfRealmStateSnapshot/ByRef | self.realm_state_snapshot.query.by_ref |
ak.self.realm_state_snapshot.read.manifest_head.v1 | GET /_arkret/self/realm-state-snapshot/head | SelfRealmStateSnapshot/Head | self.realm_state_snapshot.query.manifest_head |
ak.self.strand.watch.read.current.v1 | POST /_arkret/self/strands/watch/current | SelfStrandWatch/Current | self.strand.watch.query.current |
ak.self.current_principal.read.resolve.v1 | POST /_arkret/self/account/current-principal | SelfCurrentPrincipal/Resolve | self.current_principal.query.resolve |
ak.self.current_results.read.exact.v1 | POST /_arkret/self/current-results/exact | SelfCurrentResults/ReadExact | self.current_results.query.exact |
ak.self.realm.read.streams.v1 | GET /_arkret/self/realms/{realm_id}/streams | SelfRealm/Streams | self.realm.query.streams |
peer_federation · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.peer.events.command.submit.v1 | POST /_arkret/peer/events | PeerEvents/Submit | peer.events.command.submit |
ak.peer.account_status.read.resolve.v1 | POST /_arkret/peer/account-status/resolve | PeerAccountStatus/Resolve | peer.account_status.query.resolve |
ak.peer.account_status.command.submit.v1 | POST /_arkret/peer/account-status | PeerAccountStatus/Submit | peer.account_status.command.submit |
ak.peer.erasure_receipt.command.submit.v1 | POST /_arkret/peer/erasure-receipts | PeerErasureReceipts/Submit | peer.erasure_receipt.command.submit |
ak.peer.erasure_receipt.resource.get.v1 | GET /_arkret/peer/erasure-receipts/{receipt_id} | PeerErasureReceipts/Get | peer.erasure_receipt.resource.get |
ak.peer.mls.read.group_state_material.v1 | POST /_arkret/peer/mls/group-state-material | PeerMls/GroupStateMaterial | peer.mls.query.group_state_material |
ak.peer.mls.command.attest_add.v1 | POST /_arkret/peer/mls/add-authority-attestations | PeerMls/AttestAdd | peer.mls.command.attest_add |
ak.peer.mls.read.roster_authority.v1 | POST /_arkret/peer/mls/roster-authority/query | PeerMls/RosterAuthority | peer.mls.query.roster_authority |
ak.peer.committed_event.read.scan.v1 | POST /_arkret/peer/streams/scan | PeerStreams/Scan | peer.streams.read.scan |
ak.peer.invites.command.submit.v1 | POST /_arkret/peer/invites | PeerInvites/Submit | peer.invites.command.submit |
ak.peer.contacts.command.submit.v1 | POST /_arkret/peer/contacts | PeerContacts/Submit | peer.contacts.command.submit |
ak.peer.keys.keypackages.command.claim.v1 | POST /_arkret/peer/keys/keypackages/claim | PeerKeys/KeyPackagesClaim | peer.keys.keypackages.command.claim |
ak.peer.keys.keypackages.read.claim.v1 | POST /_arkret/peer/keys/keypackages/claims/query | PeerKeys/KeyPackagesClaimQuery | peer.keys.keypackages.query.claim |
ak.peer.keys.read.lookup.v1 | POST /_arkret/peer/keys/query | PeerKeys/Query | peer.keys.query.lookup |
ak.peer.signal.command.relay.v1 | POST /_arkret/peer/signal | PeerSignal/Relay | peer.signal.command.relay |
realm_join_intake · surface class core
Base interoperable surfaces used for documentation and lint; v1 support does not imply wire reachability without explicit supported_operation_bundles advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.peer.realm_join.read.bootstrap.v1 | POST /_arkret/peer/realm-joins/bootstrap | PeerRealmJoin/Bootstrap | peer.realm_join.query.bootstrap |
ak.peer.realm_join.read.preview.v1 | POST /_arkret/peer/realm-joins/preview | PeerRealmJoin/Preview | peer.realm_join.query.preview |
ak.self.messages.command.prepare.v1 | POST /_arkret/self/messages/prepare | SelfMessages/Prepare | self.messages.command.prepare |
ak.self.realm_join.command.prepare.v1 | POST /_arkret/self/realm-joins/prepare | SelfRealmJoin/Prepare | self.realm_join.command.prepare |
ak.self.realm_join.read.preview.v1 | POST /_arkret/self/realm-joins/preview | SelfRealmJoin/Preview | self.realm_join.query.preview |
directory_discovery · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.find.directory.read.describe.v1 | GET /_arkret/find/directory/describe | FindDirectory/Describe | find.directory.query.describe |
ak.find.directory.read.search_realms.v1 | POST /_arkret/find/directory/search-realms | FindDirectory/SearchRealms | find.directory.query.search_realms |
ak.find.directory.read.resolve_realm.v1 | POST /_arkret/find/directory/resolve-realm | FindDirectory/ResolveRealm | find.directory.query.resolve_realm |
contact_lifecycle · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.contact.command.request.v1 | POST /_arkret/self/contacts/request | SelfContact/Request | self.contact.command.request |
ak.self.contact.command.checkpoint.v1 | POST /_arkret/self/contacts/continuity-checkpoint | SelfContact/ContinuityCheckpoint | self.contact.command.checkpoint |
ak.self.contact.command.respond.v1 | POST /_arkret/self/contacts/respond | SelfContact/Respond | self.contact.command.respond |
ak.self.contact.command.reject.v1 | POST /_arkret/self/contacts/reject | SelfContact/Reject | self.contact.command.reject |
ak.self.contact.command.scope_update.v1 | POST /_arkret/self/contacts/scope-update | SelfContact/ScopeUpdate | self.contact.command.scope_update |
ak.self.contact.read.list.v1 | GET /_arkret/self/contacts | SelfContact/List | self.contact.query.list |
ak.self.contact.command.tombstone.v1 | POST /_arkret/self/contacts/tombstone | SelfContact/Tombstone | self.contact.command.tombstone |
ak.self.invites.command.dispatch.v1 | POST /_arkret/self/invites/dispatch | SelfInvites/Dispatch | self.invites.command.dispatch |
ak.self.invite_receive_policy.resource.get.v1 | GET /_arkret/self/invite-receive-policy | SelfInviteReceivePolicy/Get | self.invite_receive_policy.resource.get |
ak.self.invite_receive_policy.resource.replace.v1 | PUT /_arkret/self/invite-receive-policy | SelfInviteReceivePolicy/Replace | self.invite_receive_policy.resource.replace |
ak.self.invite_locator.command.issue.v1 | POST /_arkret/self/invite-locators | SelfInviteLocator/Issue | self.invite_locator.command.issue |
ak.self.invite_locator.command.rotate.v1 | POST /_arkret/self/invite-locators/rotate | SelfInviteLocator/Rotate | self.invite_locator.command.rotate |
ak.self.invite_locator.command.revoke.v1 | POST /_arkret/self/invite-locators/revoke | SelfInviteLocator/Revoke | self.invite_locator.command.revoke |
ak.self.direct_conversation.read.resolve.v1 | POST /_arkret/self/direct-conversations/resolve | SelfDirectConversation/Resolve | self.direct_conversation.query.resolve |
circle_management · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.circle.command.create.v1 | POST /_arkret/self/circles | SelfCircle/Create | self.circle.command.create |
ak.self.circle.read.list.v1 | GET /_arkret/self/circles | SelfCircle/List | self.circle.query.list |
ak.self.circle.resource.get.v1 | GET /_arkret/self/circles/{circle_id} | SelfCircle/Get | self.circle.resource.get |
ak.self.circle.member.command.add.v1 | POST /_arkret/self/circles/{circle_id}/members | SelfCircle/MemberAdd | self.circle.member.command.add |
ak.self.circle.member.resource.delete.v1 | DELETE /_arkret/self/circles/{circle_id}/members/{actor_id} | SelfCircle/MemberRemove | self.circle.member.resource.delete |
ak.self.circle.command.rotate_scope.v1 | POST /_arkret/self/circles/{circle_id}/scope-rotate | SelfCircle/ScopeRotate | self.circle.command.rotate_scope |
realm_governance_links · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.realm_link.read.list.v1 | GET /_arkret/self/realms/{realm_id}/links | SelfRealmLink/List | self.realm_link.query.list |
ak.self.realm_organization.read.list.v1 | GET /_arkret/self/realms/{realm_id}/organizations | SelfRealmOrganization/List | self.realm_organization.query.list |
realm_read · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.realm.resource.get.v1 | GET /_arkret/self/realms/{realm_id} | SelfRealm/Get | self.realm.resource.get |
ak.self.realm.read.export.v1 | GET /_arkret/self/realms/{realm_id}/export | SelfRealm/Export | self.realm.query.export |
ak.self.mls.read.group_state_material.v1 | POST /_arkret/self/mls/group-state-material/query | SelfMls/GroupStateMaterial | self.mls.query.group_state_material |
ak.self.mls.read.roster_authority.v1 | POST /_arkret/self/mls/roster-authority/query | SelfMls/RosterAuthority | self.mls.query.roster_authority |
consent_management · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.consent.read.list.v1 | GET /_arkret/self/consent/results | SelfConsent/List | self.consent.query.list |
ak.self.consent.resource.get.v1 | GET /_arkret/self/consent/result | SelfConsent/Get | self.consent.resource.get |
ak.self.consent.command.grant.v1 | POST /_arkret/self/consent/results/grant | SelfConsent/Grant | self.consent.command.grant |
ak.self.consent.command.revoke.v1 | POST /_arkret/self/consent/results/revoke | SelfConsent/Revoke | self.consent.command.revoke |
ak.self.consent.command.request.v1 | POST /_arkret/self/consent/request | SelfConsent/Request | self.consent.command.request |
account_data · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.account_data.read.list.v1 | GET /_arkret/self/account_data | SelfAccountData/List | self.account_data.query.list |
ak.self.account_data.resource.get.v1 | GET /_arkret/self/account_data/{account_data_key} | SelfAccountData/Get | self.account_data.resource.get |
ak.self.account_data.resource.replace.v1 | PUT /_arkret/self/account_data/{account_data_key} | SelfAccountData/Replace | self.account_data.resource.replace |
ak.self.account_data.resource.delete.v1 | DELETE /_arkret/self/account_data/{account_data_key} | SelfAccountData/Delete | self.account_data.resource.delete |
read_cursor · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.read_cursor.command.advance.v1 | POST /_arkret/self/read-cursors | SelfReadCursor/Advance | self.read_cursor.command.advance |
ak.self.read_cursor.read.list.v1 | GET /_arkret/self/read-cursors | SelfReadCursor/List | self.read_cursor.query.list |
actor_private_events · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.actor_private_events.command.submit.v1 | POST /_arkret/self/actor-private-events | SelfActorPrivateEvents/Submit | self.actor_private_events.command.submit |
blob_storage · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.blob.upload.create.v1 | POST /_arkret/self/blob/upload | SelfBlob/Upload | self.blob.upload.create |
ak.self.blob.resource.head.v1 | HEAD /_arkret/self/blob/get | SelfBlob/Head | self.blob.resource.head |
ak.self.blob.resource.get.v1 | GET /_arkret/self/blob/get | SelfBlob/Get | self.blob.resource.get |
ak.self.blob.command.presign.v1 | POST /_arkret/self/blob/presign | SelfBlob/Presign | self.blob.command.presign |
realtime_media · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.media.read.ice_config.v1 | POST /_arkret/self/rtc/ice-config | SelfMedia/IceConfig | self.media.query.ice_config |
ak.self.signal.command.send.v1 | POST /_arkret/self/signal | SelfSignal/Send | self.signal.command.send |
ak.self.signal.stream.subscribe.v1 | GET /_arkret/self/signal/subscribe | SelfSignal/Subscribe | self.signal.stream.subscribe |
ak.self.call.media.exchange.issue_token.v1 | POST /_arkret/self/rtc/token | SelfCallMedia/TokenExchange | self.call.media.exchange.issue_token |
ak.self.media_service_binding.read.resolve.v1 | POST /_arkret/self/media-service-bindings/query | SelfMediaServiceBinding/Resolve | self.media_service_binding.query.resolve |
authz_policy · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.authz.read.check.v1 | POST /_arkret/self/authz/check | SelfAuthz/Check | self.authz.query.check |
ak.self.authz.grants.read.effective.v1 | GET /_arkret/self/authz/effective-grants | SelfAuthz/GetEffectiveGrants | self.authz.grants.query.effective |
ak.self.authz.invites.read.list.v1 | GET /_arkret/self/authz/invites | SelfAuthz/GetInvites | self.authz.invites.query.list |
moderation_reports · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.moderation.command.report.v1 | POST /_arkret/self/moderation/report | SelfModeration/Report | self.moderation.command.report |
device_and_keys · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.device_messages.command.send.v1 | POST /_arkret/self/device_messages | SelfDeviceMessages/Send | self.device_messages.command.send |
ak.self.device_messages.read.list.v1 | GET /_arkret/self/device_messages | SelfDeviceMessages/Get | self.device_messages.query.list |
ak.self.device_messages.command.ack.v1 | POST /_arkret/self/device_messages/ack | SelfDeviceMessages/Ack | self.device_messages.command.ack |
ak.self.keys.upload.create.v1 | POST /_arkret/self/keys/upload | SelfKeys/Upload | self.keys.upload.create |
ak.self.keys.read.lookup.v1 | POST /_arkret/self/keys/query | SelfKeys/Query | self.keys.query.lookup |
ak.self.signer_keys.read.resolve.v1 | POST /_arkret/self/signer-keys/query | SelfSignerKeys/Resolve | self.signer_keys.query.resolve |
ak.self.keys.command.claim.v1 | POST /_arkret/self/keys/claim | SelfKeys/Claim | self.keys.command.claim |
ak.self.keys.keypackages.upload.create.v1 | POST /_arkret/self/keys/keypackages/upload | SelfKeys/KeyPackagesUpload | self.keys.keypackages.upload.create |
ak.self.keys.keypackages.command.claim.v1 | POST /_arkret/self/keys/keypackages/claim | SelfKeys/KeyPackagesClaim | self.keys.keypackages.command.claim |
ak.self.keys.keypackages.command.consume.v1 | POST /_arkret/self/keys/keypackages/consume | SelfKeys/KeyPackagesConsume | self.keys.keypackages.command.consume |
ak.self.keys.keypackages.command.revoke.v1 | POST /_arkret/self/keys/keypackages/revoke | SelfKeys/KeyPackagesRevoke | self.keys.keypackages.command.revoke |
ak.self.keys.keypackages.read.claim.v1 | POST /_arkret/self/keys/keypackages/claims/query | SelfKeys/KeyPackagesClaimQuery | self.keys.keypackages.query.claim |
ak.self.keys.backups.resource.replace.v1 | PUT /_arkret/self/keys/backups/{backup_id} | SelfKeys/BackupsReplace | self.keys.backups.resource.replace |
ak.self.keys.backups.read.list.v1 | GET /_arkret/self/keys/backups | SelfKeys/BackupsList | self.keys.backups.query.list |
ak.self.keys.backups.command.unlock.v1 | POST /_arkret/self/keys/backups/{backup_id}/unlock | SelfKeys/BackupsUnlock | self.keys.backups.command.unlock |
ak.self.keys.backups.command.issue_delete_challenge.v1 | POST /_arkret/self/keys/backups/{backup_id}/delete-challenge | SelfKeys/BackupsIssueDeleteChallenge | self.keys.backups.command.issue_delete_challenge |
ak.self.keys.backups.command.issue_unlock_challenge.v1 | POST /_arkret/self/keys/backups/{backup_id}/unlock-challenge | SelfKeys/BackupsIssueUnlockChallenge | self.keys.backups.command.issue_unlock_challenge |
ak.self.keys.backups.resource.delete.v1 | DELETE /_arkret/self/keys/backups/{backup_id} | SelfKeys/BackupsDelete | self.keys.backups.resource.delete |
push · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.edge.push.command.apply_registration.v1 | POST /_arkret/edge/push/registrations:apply | | |
ak.edge.push.command.register_device.v1 | POST /_arkret/edge/push/register-device | EdgePush/RegisterDevice | edge.push.command.register_device |
ak.edge.push.command.unregister_device.v1 | POST /_arkret/edge/push/unregister-device | EdgePush/UnregisterDevice | edge.push.command.unregister_device |
ak.edge.push.command.notify.v1 | POST /_arkret/edge/push/notify | EdgePush/Notify | edge.push.command.notify |
realm_object_read · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.space.read.list.v1 | GET /_arkret/self/realms/{realm_id}/spaces | SelfSpace/List | self.space.query.list |
ak.self.strand.read.list.v1 | GET /_arkret/self/realms/{realm_id}/strands | SelfStrand/List | self.strand.query.list |
ak.self.morph.read.list.v1 | GET /_arkret/self/realms/{realm_id}/morphs | SelfMorph/List | self.morph.query.list |
ak.self.morph.resource.get.v1 | GET /_arkret/self/realms/{realm_id}/morphs/{morph_id} | SelfMorph/Get | self.morph.resource.get |
applet · surface class interop_bridge
Adapter surfaces that bridge Arkret to external protocols (MIMI Internet-Drafts, third-party Applet hosts). Implementations advertise these only when the external protocol is supported; bridge operations are not part of any core or extension profile and frequently mirror an in-spec operation via bridges_to.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.edge.applet.read.ping.v1 | GET /_arkret/edge/applet/ping | EdgeApplet/Ping | edge.applet.query.ping |
ak.edge.applet.read.describe.v1 | GET /_arkret/edge/applet/describe | EdgeApplet/Describe | edge.applet.query.describe |
ak.edge.applet.command.transaction.v1 | POST /_arkret/edge/applet/transactions | EdgeApplet/Transaction | edge.applet.command.transaction |
ak.edge.applet.actor.read.resolve.v1 | GET /_arkret/edge/applet/actors/{actor_id} | EdgeApplet/ResolveActor | edge.applet.actor.query.resolve |
ak.edge.applet.realm.read.resolve.v1 | GET /_arkret/edge/applet/realms/{realm_id_or_alias} | EdgeApplet/ResolveRealm | edge.applet.realm.query.resolve |
ak.edge.applet.read.protocol_metadata.v1 | GET /_arkret/edge/applet/protocols/{protocol} | EdgeApplet/ProtocolMetadata | edge.applet.query.protocol_metadata |
ak.edge.applet.managed_actor.command.author.v1 | POST /_arkret/edge/applet/managed-actors/author | EdgeApplet/ManagedActorAuthor | edge.applet.managed_actor.command.author |
ak.edge.applet.third_party_users.read.list.v1 | GET /_arkret/edge/applet/third_party/users | EdgeApplet/ThirdPartyUsers | edge.applet.third_party_users.query.list |
ak.edge.applet.third_party_locations.read.list.v1 | GET /_arkret/edge/applet/third_party/locations | EdgeApplet/ThirdPartyLocations | edge.applet.third_party_locations.query.list |
applet_install · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.applet.install.command.preview.v1 | POST /_arkret/self/applets/install/preview | SelfApplet/InstallPreview | self.applet.install.command.preview |
ak.self.applet.command.install.v1 | POST /_arkret/self/applets/install | SelfApplet/Install | self.applet.command.install |
ak.self.applet.revoke.command.preview.v1 | POST /_arkret/self/applets/{applet_id}/revoke/preview | SelfApplet/RevokePreview | self.applet.revoke.command.preview |
ak.self.applet.command.revoke.v1 | POST /_arkret/self/applets/{applet_id}/revoke | SelfApplet/Revoke | self.applet.command.revoke |
ak.self.applet.authority.read.material.v1 | POST /_arkret/self/applets/{applet_id}/authority/material | SelfManagement/AppletAuthorityReadMaterial | self.applet.authority.read.material |
applet_ghost · surface class interop_bridge
Adapter surfaces that bridge Arkret to external protocols (MIMI Internet-Drafts, third-party Applet hosts). Implementations advertise these only when the external protocol is supported; bridge operations are not part of any core or extension profile and frequently mirror an in-spec operation via bridges_to.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.applet.ghost.command.preview.v1 | POST /_arkret/self/applets/{applet_id}/ghosts/provision/preview | SelfApplet/GhostPreview | self.applet.ghost.command.preview |
ak.self.applet.ghost.command.provision.v1 | POST /_arkret/self/applets/{applet_id}/ghosts/provision | SelfApplet/GhostProvision | self.applet.ghost.command.provision |
ak.self.applet.bot.command.preview.v1 | POST /_arkret/self/applets/{applet_id}/bots/provision/preview | SelfApplet/BotPreview | self.applet.bot.command.preview |
ak.self.applet.bot.command.provision.v1 | POST /_arkret/self/applets/{applet_id}/bots/provision | SelfApplet/BotProvision | self.applet.bot.command.provision |
mimi_interop · surface class interop_bridge
Adapter surfaces that bridge Arkret to external protocols (MIMI Internet-Drafts, third-party Applet hosts). Implementations advertise these only when the external protocol is supported; bridge operations are not part of any core or extension profile and frequently mirror an in-spec operation via bridges_to.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.open.mimi.read.provider_directory.v1 | GET /_arkret/open/mimi/provider-directory | OpenMimi/ProviderDirectory | open.mimi.query.provider_directory |
ak.open.mimi.exchange.request_key_material.v1 | POST /_arkret/open/mimi/key-material | OpenMimi/KeyMaterial | open.mimi.exchange.request_key_material |
ak.open.mimi.command.submit_message.v1 | POST /_arkret/open/mimi/strands/{strand_id}/messages | OpenMimi/SubmitMessage | open.mimi.command.submit_message |
ak.open.mimi.command.update_room.v1 | POST /_arkret/open/mimi/strands/{strand_id}/update | OpenMimi/RoomUpdate | open.mimi.command.update_room |
ak.open.mimi.command.request_consent.v1 | POST /_arkret/open/mimi/consent/request | OpenMimi/RequestConsent | open.mimi.command.request_consent |
ak.open.mimi.command.update_consent.v1 | POST /_arkret/open/mimi/consent/update | OpenMimi/UpdateConsent | open.mimi.command.update_consent |
ak.open.mimi.read.identifiers.v1 | POST /_arkret/open/mimi/identifiers/query | OpenMimi/IdentifierQuery | open.mimi.query.identifiers |
ak.open.mimi.command.notify.v1 | POST /_arkret/open/mimi/strands/{strand_id}/notify | OpenMimi/Notify | open.mimi.command.notify |
ak.open.mimi.command.report_abuse.v1 | POST /_arkret/open/mimi/report-abuse | OpenMimi/ReportAbuse | open.mimi.command.report_abuse |
ak.open.mimi.command.proxy_download.v1 | POST /_arkret/open/mimi/proxy-download | OpenMimi/ProxyDownload | open.mimi.command.proxy_download |
agent_pairing_handoff · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.open.agent_pairing.read.resolve.v1 | POST /_arkret/open/agent-pairing/resolve | OpenAgentPairing/Resolve | open.agent_pairing.query.resolve |
ak.open.agent_pairing.command.submit_runtime_key_request.v1 | POST /_arkret/open/agent-pairing/runtime-key-requests | OpenAgentPairing/SubmitRuntimeKeyRequest | open.agent_pairing.command.submit_runtime_key_request |
ak.open.agent_pairing.read.runtime_key_request_status.v1 | POST /_arkret/open/agent-pairing/runtime-key-requests/status | OpenAgentPairing/RuntimeKeyRequestStatus | open.agent_pairing.query.runtime_key_request_status |
device_pairing_handoff · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.open.device_pairing.command.stage.v1 | POST /_arkret/open/device-pairing/requests | OpenDevicePairing/Stage | open.device_pairing.command.stage |
ak.open.device_pairing.read.resolve.v1 | POST /_arkret/open/device-pairing/resolve | OpenDevicePairing/Resolve | open.device_pairing.query.resolve |
ak.open.device_pairing.read.status.v1 | POST /_arkret/open/device-pairing/requests/status | OpenDevicePairing/Status | open.device_pairing.query.status |
invite_locator_handoff · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.open.invite_locator.read.resolve.v1 | POST /_arkret/open/invite-locators/resolve | OpenInviteLocator/Resolve | open.invite_locator.query.resolve |
third_party_invite_handoff · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.open.third_party_invite.command.activate.v1 | POST /_arkret/open/third-party-invites/activate | OpenThirdPartyInvite/Activate | open.third_party_invite.command.activate |
ak.open.third_party_invite.command.present_token.v1 | POST /_arkret/open/third-party-invites/present | OpenThirdPartyInvite/PresentToken | open.third_party_invite.command.present_token |
ak.open.third_party_invite.command.provision.v1 | POST /_arkret/open/third-party-invites/provision | OpenThirdPartyInvite/Provision | open.third_party_invite.command.provision |
ak.open.third_party_invite.read.provisioning_status.v1 | POST /_arkret/open/third-party-invites/status | OpenThirdPartyInvite/ProvisioningStatus | open.third_party_invite.query.provisioning_status |
ak.self.third_party_invite.read.acceptance_attestation.v1 | POST /_arkret/self/third-party-invites/acceptance-attestation | SelfThirdPartyInvite/AcceptanceAttestation | self.third_party_invite.query.acceptance_attestation |
identity_resolution · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.open.identity.read.resolution.v1 | GET /_arkret/open/principals/{principal_id}/resolution | OpenIdentity/Resolution | open.identity.query.resolution |
ak.self.identity.read.resolution_audit.v1 | POST /_arkret/self/identity/resolution-audit/query | SelfIdentity/ResolutionAudit | self.identity.query.resolution_audit |
ak.open.service.read.resolution.v1 | GET /_arkret/open/services/{service_id}/resolution | OpenService/Resolution | open.service.query.resolution |
account_auth · surface class deployment_local
Deployment-specific, operator, or product-local surfaces that MUST NOT be assumed from core protocol support alone.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.gate.account.exchange.create_handoff.v1 | POST /_arkret/gate/account/authentication-handoffs | | |
ak.gate.account.read.onboarding.v1 | GET /_arkret/gate/account/onboarding | | |
ak.gate.account.command.issue_identity_binding_challenge.v1 | POST /_arkret/gate/account/identity-binding-challenges | | |
ak.gate.account.command.issue_did_binding_challenge.v1 | POST /_arkret/gate/account/did-binding-challenges | | |
ak.gate.account.command.abandon_identity_creation.v1 | POST /_arkret/gate/account/identity-abandonments | | |
ak.gate.account.command.register.v1 | POST /_arkret/gate/account/register | GateAccount/Register | gate.account.command.register |
ak.gate.account.command.finalize_device_pairing.v1 | POST /_arkret/gate/account/device-pairing/finalizations | GateAccount/FinalizeDevicePairing | gate.account.command.finalize_device_pairing |
ak.gate.account.command.pair_device.v1 | POST /_arkret/gate/account/device-pair | GateAccount/DevicePair | gate.account.command.pair_device |
ak.gate.account.read.claim_device_pairing_code.v1 | POST /_arkret/gate/account/device-pairing/code-claims | GateAccount/ClaimDevicePairingCode | gate.account.query.claim_device_pairing_code |
ak.gate.account.command.issue_session_grant.v1 | POST /_arkret/gate/account/session-grants | GateAccount/IssueSessionGrant | gate.account.command.issue_session_grant |
ak.gate.account.command.refresh_session_grant.v1 | POST /_arkret/gate/account/session-grants/refresh | | |
ak.gate.account.command.issue_recovery_completion_grant.v1 | POST /_arkret/gate/account/recovery-session-grants/issue | | |
ak.gate.account.command.logout.v1 | POST /_arkret/gate/account/logout | | |
ak.gate.account.command.request_erasure.v1 | POST /_arkret/gate/account/erasure-requests | GateAccount/RequestErasure | gate.account.command.request_erasure |
ak.gate.account.command.revoke_session.v1 | POST /_arkret/gate/account/session-grants/revoke | GateAccount/SessionRevoke | gate.account.command.revoke_session |
agent_runtime · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.gate.account.command.pair_agent_key.v1 | POST /_arkret/gate/account/agent-key-pair | GateAccount/AgentKeyPair | gate.account.command.pair_agent_key |
ak.self.agent.command.provision.v1 | POST /_arkret/self/agents | SelfAgent/Provision | self.agent.command.provision |
ak.self.agent.command.renew_pairing.v1 | POST /_arkret/self/agents/{agent_id}/renew-pairing | SelfAgent/RenewPairing | self.agent.command.renew_pairing |
ak.self.agent.read.list.v1 | GET /_arkret/self/agents | SelfAgent/List | self.agent.query.list |
ak.self.agent.resource.get.v1 | GET /_arkret/self/agents/{agent_id} | SelfAgent/Get | self.agent.resource.get |
ak.self.agent.command.pause.v1 | POST /_arkret/self/agents/{agent_id}/pause | SelfAgent/Pause | self.agent.command.pause |
ak.self.agent.command.resume.v1 | POST /_arkret/self/agents/{agent_id}/resume | SelfAgent/Resume | self.agent.command.resume |
ak.self.agent.command.deactivate.v1 | POST /_arkret/self/agents/{agent_id}/deactivate | SelfAgent/Deactivate | self.agent.command.deactivate |
ak.self.agent.sidecar.command.ensure.v1 | POST /_arkret/self/agent-sidecars:ensure | SelfAgent/SidecarEnsure | self.agent.sidecar.command.ensure |
ak.self.agent.sidecar.resource.get.v1 | GET /_arkret/self/agent-sidecars/{sidecar_id} | SelfAgent/SidecarGet | self.agent.sidecar.resource.get |
ak.self.agent.sidecar.read.list.v1 | GET /_arkret/self/agent-sidecars | SelfAgent/SidecarList | self.agent.sidecar.query.list |
ak.self.agent.participation.resource.replace.v1 | PUT /_arkret/self/agents/{agent_id}/participation | SelfAgent/ParticipationReplace | self.agent.participation.resource.replace |
ak.self.agent.participation.resource.get.v1 | GET /_arkret/self/agents/{agent_id}/participation | SelfAgent/ParticipationGet | self.agent.participation.resource.get |
management_review · surface class extension
Optional interoperable surfaces that are part of the Arkret specification but require explicit discovery/profile advertisement.
| operation_id | HTTP | gRPC | MQ |
|---|---|---|---|
ak.self.management_review.command.request.v1 | POST /_arkret/self/management-reviews/requests | SelfManagement/Management_ReviewCommandRequest | self.management_review.command.request |
ak.self.management_review.command.decide.v1 | POST /_arkret/self/management-reviews/decisions | SelfManagement/Management_ReviewCommandDecide | self.management_review.command.decide |
ak.self.management_review.read.status.v1 | POST /_arkret/self/management-reviews/status | SelfManagement/Management_ReviewReadStatus | self.management_review.read.status |