···97979898### repository management
9999100100-- `GET /repos`: get an NDJSON stream of repositories and their sync status. Supports pagination and filtering:
100100+- `GET /repos`: get an NDJSON stream of repositories and their sync status. supports pagination and filtering:
101101 - `limit`: max results (default 100, max 1000)
102102- - `cursor`: DID or u64 index ID depending on partition
102102+ - `cursor`: opaque key for paginating.
103103 - `partition`: `all` (default), `pending` (backfill queue), or `resync` (retries)
104104- `GET /repos/{did}`: get the sync status and metadata of a specific repository.
105105- `PUT /repos`: explicitly track repositories. accepts an NDJSON body of `{"did": "..."}` (or JSON array of the same).
···109109110110`hydrant` implements the following XRPC endpoints under `/xrpc/`:
111111112112-#### `com.atproto.repo.getRecord`
113113-114114-retrieve a single record by its AT URI components.
115115-116116-| param | required | description |
117117-| :--- | :--- | :--- |
118118-| `repo` | yes | DID or handle of the repository. |
119119-| `collection` | yes | NSID of the collection. |
120120-| `rkey` | yes | record key. |
121121-122122-returns the record value, its CID, and its AT URI. responds with `RecordNotFound` if not present.
123123-124124-#### `com.atproto.repo.listRecords`
112112+#### `com.atproto.*`
125113126126-list records in a collection, newest-first by default.
114114+the following are implemented currently:
115115+- `com.atproto.repo.getRecord`
116116+- `com.atproto.repo.listRecords`
127117128128-| param | required | description |
129129-| :--- | :--- | :--- |
130130-| `repo` | yes | DID or handle of the repository. |
131131-| `collection` | yes | NSID of the collection. |
132132-| `limit` | no | max records to return (default `50`, max `100`). |
133133-| `cursor` | no | opaque cursor for pagination (from a previous response). |
134134-| `reverse` | no | if `true`, iterates oldest-first. |
118118+#### `systems.gaze.hydrant.*`
135119136136-returns `{ records, cursor }`. if `cursor` is present there are more results.
137137-138138-#### `systems.gaze.hydrant.countRecords`
120120+##### `systems.gaze.hydrant.countRecords`
139121140122return the total number of stored records in a collection.
141123