Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

AT Protocol repo API

Repository management, record CRUD operations

AT Protocol repo API is one of 9 APIs that AT Protocol publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include repo. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 7 operations across 7 paths, and defines 8 schemas. It is described by OpenAPI 3.0.3, at version 1.0.0.

Requests are made against 2 base URLs: https://public.api.bsky.app/xrpc, https://api.bsky.app/xrpc.

7 operations 7 paths 8 schemas 3 GET4 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
1.0.0
Base URL
https://bsky.social/xrpc
Authentication
HTTP Bearer
Contact
Resource Areas
1

Authentication & Security 1

AT Protocol repo API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (JWT) (bearerAuth). By default, every request must be authenticated, though some operations may also be called without credentials.

  • bearerAuth — Access JWT obtained from com.atproto.server.createSession

Paths & Operations 7

Across 7 paths, the API surfaces 7 operations — 3 GET, 4 POST. Each is listed below with its method, path, parameters, and response codes.

repo 7

Repository management, record CRUD operations

GET
/com.atproto.repo.getRecord
Get Record
com_atproto_repo_getRecord 4 params → 200400
POST
/com.atproto.repo.createRecord
Create Record
com_atproto_repo_createRecord body → 200400401
POST
/com.atproto.repo.putRecord
Put Record
com_atproto_repo_putRecord body → 200400401
POST
/com.atproto.repo.deleteRecord
Delete Record
com_atproto_repo_deleteRecord body → 200400401
GET
/com.atproto.repo.listRecords
List Records
com_atproto_repo_listRecords 5 params → 200400
POST
/com.atproto.repo.uploadBlob
Upload Blob
com_atproto_repo_uploadBlob body → 200400401
GET
/com.atproto.repo.describeRepo
Describe Repo
com_atproto_repo_describeRepo 1 param → 200400

Schemas 8

The contract defines 8 schemas that model the data the API accepts and returns. The most detailed are PutRecordInput (7 properties), CreateRecordInput (6 properties), RepoDescription (5 properties), BlobRef (4 properties). Each schema is shown below with its type and property counts.

CreateRecordInput
object
6 properties 3 required
BlobRef
object
4 properties 4 required
RepoDescription
object
5 properties 5 required
PutRecordInput
object
7 properties 4 required
CommitMeta
object
2 properties 2 required
Error
object
2 properties 2 required
RepoRecord
object
3 properties 2 required
RecordRef
object
4 properties 2 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

atproto-repo-api-openapi.yml Raw ↑

Other APIs AT Protocol publishes across the network.

AT Protocol Firehose (Event Stream)
AT Protocol actor API
AT Protocol feed API
AT Protocol graph API
AT Protocol identity API
AT Protocol notification API
AT Protocol server API
AT Protocol sync API