zds

zds-pds.atserver.farm

api reference

this pds exposes 108 documented http operations, including xrpc methods at /xrpc/{NSID}.

108 operations 11 groups 78 xrpc methods 18 experimental disabled permissioned data
GET/public

Public landing page for the PDS.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/"
HEAD/public

Landing page probe.

No field metadata yet.

curl -sS -X HEAD "https://zds-pds.atserver.farm/"
GET/admin/sessionsadmin

Operator session inventory page.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/admin/sessions"
GET/apipublic

Interactive endpoint inventory for this ZDS instance.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/api"
HEAD/apipublic

Endpoint inventory probe without a response body.

No field metadata yet.

curl -sS -X HEAD "https://zds-pds.atserver.farm/api"
GET/api/openapi.jsonpublic

OpenAPI 3.1 export generated from the same endpoint inventory.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/api/openapi.json"
HEAD/api/openapi.jsonpublic

OpenAPI export probe without a response body.

No field metadata yet.

curl -sS -X HEAD "https://zds-pds.atserver.farm/api/openapi.json"
GET/favicon.svgpublic

SVG favicon.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/favicon.svg"
HEAD/favicon.svgpublic

SVG favicon probe.

No field metadata yet.

curl -sS -X HEAD "https://zds-pds.atserver.farm/favicon.svg"
GET/og-imagepublic

Social preview image.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/og-image"
HEAD/og-imagepublic

Social preview image probe.

No field metadata yet.

curl -sS -X HEAD "https://zds-pds.atserver.farm/og-image"
GET/spacesresident

Resident view for permissioned-space records.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/spaces"
HEAD/spacesresident

Permissioned-space record view probe.

No field metadata yet.

curl -sS -X HEAD "https://zds-pds.atserver.farm/spaces"
GET/statspublic

Operational health and route latency page.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/stats"
HEAD/statspublic

Stats page probe without a response body.

No field metadata yet.

curl -sS -X HEAD "https://zds-pds.atserver.farm/stats"
GET/xrpc/dev.zat.account.listSessionsbearer

List active account sessions and OAuth grants for the signed-in account.

NSIDdev.zat.account.listSessions

Query

  • active
  • limit
curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/dev.zat.account.listSessions"
GET/xrpc/dev.zat.admin.listSessionsadmin

List active sessions and OAuth grants across accounts on this PDS.

NSIDdev.zat.admin.listSessions

Query

  • active
  • limit
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/dev.zat.admin.listSessions"
GET/xrpc/_healthpublic

PDS health probe.

NSID_health

Response

  • version
  • status
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/_health"
HEAD/xrpc/_healthpublic

PDS health probe without a response body.

NSID_health

No field metadata yet.

curl -sS -X HEAD "https://zds-pds.atserver.farm/xrpc/_health"
GET/.well-known/atproto-didpublic

atproto DID discovery document.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/.well-known/atproto-did"
GET/.well-known/did.jsonpublic

DID document for the server DID.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/.well-known/did.json"
GET/.well-known/oauth-authorization-serverpublic

OAuth authorization server metadata.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/.well-known/oauth-authorization-server"
GET/.well-known/oauth-protected-resourcepublic

OAuth protected resource metadata.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/.well-known/oauth-protected-resource"
GET/oauth/authorizebrowser

Authorization consent page.

Query

  • request_uri
curl -sS -X GET "https://zds-pds.atserver.farm/oauth/authorize"
POST/oauth/authorizebrowser

Authorization consent submission.

No field metadata yet.

curl -sS -X POST "https://zds-pds.atserver.farm/oauth/authorize" \
  -H 'content-type: application/json' \
  --data '{}'
POST/oauth/introspectclient

OAuth token introspection endpoint.

No field metadata yet.

curl -sS -X POST "https://zds-pds.atserver.farm/oauth/introspect" \
  -H 'content-type: application/json' \
  --data '{}'
GET/oauth/jwkspublic

OAuth signing keys.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/oauth/jwks"
POST/oauth/parclient

Pushed authorization request endpoint.

No field metadata yet.

curl -sS -X POST "https://zds-pds.atserver.farm/oauth/par" \
  -H 'content-type: application/json' \
  --data '{}'
POST/oauth/passkey/finishbrowser

Passkey login completion for OAuth flows.

No field metadata yet.

curl -sS -X POST "https://zds-pds.atserver.farm/oauth/passkey/finish" \
  -H 'content-type: application/json' \
  --data '{}'
POST/oauth/passkey/optionsbrowser

Passkey login challenge for OAuth flows.

No field metadata yet.

curl -sS -X POST "https://zds-pds.atserver.farm/oauth/passkey/options" \
  -H 'content-type: application/json' \
  --data '{}'
POST/oauth/revokeclient

OAuth token revocation endpoint.

No field metadata yet.

curl -sS -X POST "https://zds-pds.atserver.farm/oauth/revoke" \
  -H 'content-type: application/json' \
  --data '{}'
POST/oauth/tokenclient

OAuth token endpoint.

No field metadata yet.

curl -sS -X POST "https://zds-pds.atserver.farm/oauth/token" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.activateAccountbearer

Reactivate the signed-in account.

NSIDcom.atproto.server.activateAccount

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.activateAccount" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.server.checkAccountStatusbearer

Check account status for the signed-in account.

NSIDcom.atproto.server.checkAccountStatus

No field metadata yet.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.checkAccountStatus"
POST/xrpc/com.atproto.server.confirmEmailbearer

Confirm an account email address.

NSIDcom.atproto.server.confirmEmail

Body

  • email
  • token
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.confirmEmail" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.createAccountinvite

Create a new account on this PDS.

NSIDcom.atproto.server.createAccount

Body

  • handle
  • email
  • password
  • inviteCode
  • signingKey
curl -sS -X POST "https://zds-pds.atserver.farm/xrpc/com.atproto.server.createAccount" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.createAppPasswordbearer

Create an app password.

NSIDcom.atproto.server.createAppPassword

Body

  • name
  • privileged
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.createAppPassword" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.createInviteCodeadmin

Create one invite code.

NSIDcom.atproto.server.createInviteCode

Body

  • useCount
  • forAccount
curl -sS -X POST "https://zds-pds.atserver.farm/xrpc/com.atproto.server.createInviteCode" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.createInviteCodesadmin

Create invite codes in bulk.

NSIDcom.atproto.server.createInviteCodes

Body

  • codeCount
  • useCount
  • forAccounts
curl -sS -X POST "https://zds-pds.atserver.farm/xrpc/com.atproto.server.createInviteCodes" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.createSessionpassword

Create an app password session.

NSIDcom.atproto.server.createSession

Body

  • identifier
  • password
curl -sS -X POST "https://zds-pds.atserver.farm/xrpc/com.atproto.server.createSession" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.deactivateAccountbearer

Deactivate the signed-in account.

NSIDcom.atproto.server.deactivateAccount

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.deactivateAccount" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.deletePasskeybearer

Delete a passkey.

NSIDcom.atproto.server.deletePasskey

Body

  • id
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.deletePasskey" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.server.describeServerpublic

Describe account creation capabilities for this PDS.

NSIDcom.atproto.server.describeServer

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.server.describeServer"
POST/xrpc/com.atproto.server.finishPasskeyRegistrationbearer

Finish passkey registration.

NSIDcom.atproto.server.finishPasskeyRegistration

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.finishPasskeyRegistration" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.server.getAccountInviteCodesbearer

List invite codes associated with the signed-in account.

NSIDcom.atproto.server.getAccountInviteCodes

No field metadata yet.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.getAccountInviteCodes"
GET/xrpc/com.atproto.server.getServiceAuthbearer

Mint a service auth token.

NSIDcom.atproto.server.getServiceAuth

Query

  • aud
  • exp
  • lxm
curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.getServiceAuth"
GET/xrpc/com.atproto.server.getSessionbearer

Describe the current app password session.

NSIDcom.atproto.server.getSession

No field metadata yet.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.getSession"
GET/xrpc/com.atproto.server.listAppPasswordsbearer

List app passwords for the signed-in account.

NSIDcom.atproto.server.listAppPasswords

No field metadata yet.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.listAppPasswords"
GET/xrpc/com.atproto.server.listPasskeysbearer

List passkeys for the signed-in account.

NSIDcom.atproto.server.listPasskeys

No field metadata yet.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.listPasskeys"
POST/xrpc/com.atproto.server.refreshSessionrefresh bearer

Refresh an app password session.

NSIDcom.atproto.server.refreshSession

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.refreshSession" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.requestEmailConfirmationbearer

Request an email confirmation token.

NSIDcom.atproto.server.requestEmailConfirmation

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.requestEmailConfirmation" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.requestEmailUpdatebearer

Request an email update token.

NSIDcom.atproto.server.requestEmailUpdate

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.requestEmailUpdate" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.reserveSigningKeypublic

Reserve a signing key for account creation.

NSIDcom.atproto.server.reserveSigningKey

No field metadata yet.

curl -sS -X POST "https://zds-pds.atserver.farm/xrpc/com.atproto.server.reserveSigningKey" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.revokeAppPasswordbearer

Revoke an app password.

NSIDcom.atproto.server.revokeAppPassword

Body

  • name
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.revokeAppPassword" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.startPasskeyRegistrationbearer

Begin passkey registration.

NSIDcom.atproto.server.startPasskeyRegistration

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.startPasskeyRegistration" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.updateEmailbearer

Update an account email address.

NSIDcom.atproto.server.updateEmail

Body

  • email
  • token
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.updateEmail" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.server.updatePasskeybearer

Rename or update a passkey.

NSIDcom.atproto.server.updatePasskey

Body

  • id
  • name
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.server.updatePasskey" \
  -H 'content-type: application/json' \
  --data '{}'
GET/passkeyssession

Compatibility redirect to security settings.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/passkeys"
GET/securitysession

Security settings page.

No field metadata yet.

curl -sS -X GET "https://zds-pds.atserver.farm/security"
GET/xrpc/app.bsky.actor.getPreferencesbearer

Read Bluesky actor preferences.

NSIDapp.bsky.actor.getPreferences

No field metadata yet.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/app.bsky.actor.getPreferences"
POST/xrpc/app.bsky.actor.putPreferencesbearer

Replace Bluesky actor preferences.

NSIDapp.bsky.actor.putPreferences

Body

  • preferences
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/app.bsky.actor.putPreferences" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.repo.applyWritesbearer

Apply multiple repo writes in one commit.

NSIDcom.atproto.repo.applyWrites

Body

  • repo
  • validate
  • writes
  • swapCommit
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.applyWrites" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.repo.createRecordbearer

Create a record in a repository collection.

NSIDcom.atproto.repo.createRecord

Body

  • repo
  • collection
  • rkey
  • validate
  • record
  • swapCommit
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.createRecord" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.repo.deleteRecordbearer

Delete a record.

NSIDcom.atproto.repo.deleteRecord

Body

  • repo
  • collection
  • rkey
  • swapRecord
  • swapCommit
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.deleteRecord" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.repo.describeRepopublic

Describe a repository.

NSIDcom.atproto.repo.describeRepo

Query

  • repo
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.describeRepo"
GET/xrpc/com.atproto.repo.getRecordpublic

Read a record.

NSIDcom.atproto.repo.getRecord

Query

  • repo
  • collection
  • rkey
  • cid
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.getRecord"
POST/xrpc/com.atproto.repo.importRepobearer

Import a repository CAR.

NSIDcom.atproto.repo.importRepo

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.importRepo" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.repo.listMissingBlobsbearer

List blob CIDs referenced by records but missing from storage.

NSIDcom.atproto.repo.listMissingBlobs

Query

  • cursor
  • limit
curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.listMissingBlobs"
GET/xrpc/com.atproto.repo.listRecordspublic

List records in a collection.

NSIDcom.atproto.repo.listRecords

Query

  • repo
  • collection
  • limit
  • cursor
  • reverse
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.listRecords"
POST/xrpc/com.atproto.repo.putRecordbearer

Create or replace a record by rkey.

NSIDcom.atproto.repo.putRecord

Body

  • repo
  • collection
  • rkey
  • validate
  • record
  • swapRecord
  • swapCommit
curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.putRecord" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.repo.uploadBlobbearer or service

Upload a blob for the signed-in repository.

NSIDcom.atproto.repo.uploadBlob

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.repo.uploadBlob" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.sync.getBlobpublic

Fetch a repository blob.

NSIDcom.atproto.sync.getBlob

Query

  • did
  • cid
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.getBlob"
HEAD/xrpc/com.atproto.sync.getBlobpublic

Probe a repository blob without a response body.

NSIDcom.atproto.sync.getBlob

Query

  • did
  • cid
curl -sS -X HEAD "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.getBlob"
GET/xrpc/com.atproto.sync.getLatestCommitpublic

Fetch the latest commit CID and revision.

NSIDcom.atproto.sync.getLatestCommit

Query

  • did
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.getLatestCommit"
HEAD/xrpc/com.atproto.sync.getLatestCommitpublic

Probe latest commit metadata without a response body.

NSIDcom.atproto.sync.getLatestCommit

Query

  • did
curl -sS -X HEAD "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.getLatestCommit"
GET/xrpc/com.atproto.sync.getRepopublic

Fetch a repository CAR.

NSIDcom.atproto.sync.getRepo

Query

  • did
  • since
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.getRepo"
HEAD/xrpc/com.atproto.sync.getRepopublic

Probe a repository CAR without a response body.

NSIDcom.atproto.sync.getRepo

Query

  • did
  • since
curl -sS -X HEAD "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.getRepo"
GET/xrpc/com.atproto.sync.getRepoStatuspublic

Read repository availability status.

NSIDcom.atproto.sync.getRepoStatus

Query

  • did
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.getRepoStatus"
GET/xrpc/com.atproto.sync.listBlobspublic

List repository blob CIDs.

NSIDcom.atproto.sync.listBlobs

Query

  • did
  • since
  • limit
  • cursor
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.listBlobs"
HEAD/xrpc/com.atproto.sync.listBlobspublic

Probe repository blob CIDs without a response body.

NSIDcom.atproto.sync.listBlobs

Query

  • did
  • since
  • limit
  • cursor
curl -sS -X HEAD "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.listBlobs"
GET/xrpc/com.atproto.sync.listRepospublic

List hosted repositories.

NSIDcom.atproto.sync.listRepos

Query

  • limit
  • cursor
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.listRepos"
HEAD/xrpc/com.atproto.sync.listRepospublic

Probe hosted repositories without a response body.

NSIDcom.atproto.sync.listRepos

Query

  • limit
  • cursor
curl -sS -X HEAD "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.listRepos"
POST/xrpc/com.atproto.sync.notifyOfUpdatepublic

Notify this PDS that another repo has updated.

NSIDcom.atproto.sync.notifyOfUpdate

Body

  • hostname
curl -sS -X POST "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.notifyOfUpdate" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.sync.requestCrawlpublic

Ask a relay to crawl this PDS.

NSIDcom.atproto.sync.requestCrawl

Body

  • hostname
curl -sS -X POST "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.requestCrawl" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.sync.subscribeReposwebsocket

Subscribe to repository commit events.

NSIDcom.atproto.sync.subscribeRepos

Query

  • cursor

Upgrades to a websocket connection.

curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.sync.subscribeRepos"
GET/xrpc/com.atproto.identity.getRecommendedDidCredentialsbearer

Get recommended DID credentials for the signed-in account.

NSIDcom.atproto.identity.getRecommendedDidCredentials

No field metadata yet.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.identity.getRecommendedDidCredentials"
POST/xrpc/com.atproto.identity.requestPlcOperationSignaturebearer

Request a PLC operation signature.

NSIDcom.atproto.identity.requestPlcOperationSignature

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.identity.requestPlcOperationSignature" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.identity.resolveHandlepublic

Resolve a handle to a DID.

NSIDcom.atproto.identity.resolveHandle

Query

  • handle
curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.identity.resolveHandle"
POST/xrpc/com.atproto.identity.signPlcOperationbearer

Sign a PLC operation.

NSIDcom.atproto.identity.signPlcOperation

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.identity.signPlcOperation" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.identity.submitPlcOperationbearer

Submit a PLC operation.

NSIDcom.atproto.identity.submitPlcOperation

No field metadata yet.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.identity.submitPlcOperation" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.space.applyWritesexperimentalexperimental bearer

Apply a batch of writes inside a permissioned data space.

NSIDcom.atproto.space.applyWrites

Body

  • space
  • repo
  • validate
  • writes

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.applyWrites" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.space.createRecordexperimentalexperimental bearer

Create a record inside a permissioned data space.

NSIDcom.atproto.space.createRecord

Body

  • space
  • repo
  • collection
  • rkey
  • validate
  • record

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.createRecord" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.space.createSpaceexperimentalexperimental bearer

Create a permissioned data space.

NSIDcom.atproto.space.createSpace

Body

  • did
  • type
  • skey
  • managingApp
  • isPublic
  • appAccessMode
  • appExceptions

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.createSpace" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.space.deleteRecordexperimentalexperimental bearer

Delete a record inside a permissioned data space.

NSIDcom.atproto.space.deleteRecord

Body

  • space
  • repo
  • collection
  • rkey

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.deleteRecord" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.space.deleteSpaceexperimentalexperimental bearer

Tombstone a permissioned data space.

NSIDcom.atproto.space.deleteSpace

Body

  • space

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.deleteSpace" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.space.getBlobexperimentalexperimental bearer or space credential

Read a blob referenced from a permissioned data record.

NSIDcom.atproto.space.getBlob

Query

  • space
  • repo
  • cid

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.getBlob"
GET/xrpc/com.atproto.space.getMemberGrantexperimentalexperimental OAuth

Create a member grant for exchange with a space owner.

NSIDcom.atproto.space.getMemberGrant

Query

  • space

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X GET "https://zds-pds.atserver.farm/xrpc/com.atproto.space.getMemberGrant"
GET/xrpc/com.atproto.space.getRecordexperimentalexperimental bearer or space credential

Read a record from a permissioned data space.

NSIDcom.atproto.space.getRecord

Query

  • space
  • repo
  • collection
  • rkey

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.getRecord"
GET/xrpc/com.atproto.space.getRepoOplogexperimentalexperimental bearer or space credential

Read incremental record operations for a writer repo in a space.

NSIDcom.atproto.space.getRepoOplog

Query

  • space
  • repo
  • since
  • limit

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.getRepoOplog"
GET/xrpc/com.atproto.space.getRepoStateexperimentalexperimental bearer or space credential

Read current record-set commitment state for a writer repo in a space.

NSIDcom.atproto.space.getRepoState

Query

  • space
  • repo

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.getRepoState"
GET/xrpc/com.atproto.space.getSpaceexperimentalexperimental bearer

Read permissioned data space configuration.

NSIDcom.atproto.space.getSpace

Query

  • space

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.getSpace"
POST/xrpc/com.atproto.space.getSpaceCredentialexperimentalexperimental member grant

Exchange a member grant for a space credential.

NSIDcom.atproto.space.getSpaceCredential

Body

  • space
  • notifyEndpoint

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST "https://zds-pds.atserver.farm/xrpc/com.atproto.space.getSpaceCredential" \
  -H 'content-type: application/json' \
  --data '{}'
GET/xrpc/com.atproto.space.listRecordsexperimentalexperimental bearer or space credential

List record keys and CIDs in a permissioned data space.

NSIDcom.atproto.space.listRecords

Query

  • space
  • repo
  • collection
  • limit
  • cursor
  • reverse

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.listRecords"
GET/xrpc/com.atproto.space.listSpacesexperimentalexperimental bearer

List spaces the authenticated user participates in.

NSIDcom.atproto.space.listSpaces

Query

  • did
  • type
  • limit
  • cursor

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X GET \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.listSpaces"
POST/xrpc/com.atproto.space.notifySpaceDeletedexperimentalexperimental service

Notify a member PDS or syncing service that a space was deleted.

NSIDcom.atproto.space.notifySpaceDeleted

Body

  • space

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.notifySpaceDeleted" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.space.notifyWriteexperimentalexperimental service

Notify a space owner or syncing service of a permissioned data write.

NSIDcom.atproto.space.notifyWrite

Body

  • space
  • repo
  • rev

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.notifyWrite" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.space.putRecordexperimentalexperimental bearer

Create or update a record inside a permissioned data space.

NSIDcom.atproto.space.putRecord

Body

  • space
  • repo
  • collection
  • rkey
  • validate
  • record

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.putRecord" \
  -H 'content-type: application/json' \
  --data '{}'
POST/xrpc/com.atproto.space.updateSpaceConfigexperimentalexperimental bearer

Update permissioned data space configuration.

NSIDcom.atproto.space.updateSpaceConfig

Body

  • space
  • managingApp
  • isPublic
  • appAccessMode
  • appExceptions

Experimental. Availability is controlled by ZDS_PERMISSIONED_DATA; semantics may change while the protocol is still being shaped.

Experimental and gated by ZDS_PERMISSIONED_DATA.

curl -sS -X POST \
  -H 'authorization: Bearer $TOKEN' "https://zds-pds.atserver.farm/xrpc/com.atproto.space.updateSpaceConfig" \
  -H 'content-type: application/json' \
  --data '{}'