very fast at protocol indexer with flexible filtering, xrpc queries, cursor-backed event stream, and more, built on fjall
rust fjall at-protocol atproto indexer
58
fork

Configure Feed

Select the types of activity you want to include in your feed.

[docs] dont nest xrpc apis too much in readme

dawn e8518f37 1a5b4640

+20 -20
+20 -20
README.md
··· 80 80 | `CRAWLER_MAX_PENDING_REPOS` | `2000` | max pending repos for crawler. | 81 81 | `CRAWLER_RESUME_PENDING_REPOS` | `1000` | resume threshold for crawler pending repos. | 82 82 83 - ## api 83 + ## REST api 84 84 85 85 ### management 86 86 ··· 143 143 - `PUT /repos`: explicitly track repositories. accepts an NDJSON body of `{"did": "..."}` (or JSON array of the same). 144 144 - `DELETE /repos`: untrack repositories. accepts an NDJSON body of `{"did": "..."}` (or JSON array of the same). 145 145 146 - ### data access (xrpc) 146 + ### event stream 147 + 148 + - `GET /stream`: subscribe to the event stream. 149 + - query parameters: 150 + - `cursor` (optional): start streaming from a specific event ID. 151 + 152 + ### stats 153 + 154 + - `GET /stats`: get stats about the database: 155 + - `counts`: counts of repos, records, events, and errors, etc. 156 + - `sizes`: sizes of the database keyspaces on disk, in bytes. 157 + 158 + ## data access (xrpc) 147 159 148 160 `hydrant` implements the following XRPC endpoints under `/xrpc/`: 149 161 150 - #### com.atproto.* 162 + ### com.atproto.* 151 163 152 164 the following are implemented currently: 153 165 - `com.atproto.repo.getRecord` 154 166 - `com.atproto.repo.listRecords` 155 167 156 - #### systems.gaze.hydrant.* 168 + ### systems.gaze.hydrant.* 157 169 158 170 these are some non-standard XRPCs that might be useful. 159 171 160 - ##### systems.gaze.hydrant.countRecords 172 + #### systems.gaze.hydrant.countRecords 161 173 162 174 return the total number of stored records in a collection. 163 175 ··· 168 180 169 181 returns `{ count }`. 170 182 171 - #### blue.microcosm.links.* 183 + ### blue.microcosm.links.* 172 184 173 185 hydrant implements a subset of [microcosm constellation](https://constellation.microcosm.blue/) when it's built with the `backlinks` cargo feature (`cargo build --features backlinks`). 174 186 175 187 when enabled, hydrant indexes all AT URI and DID references found inside stored records into a reverse index. this lets you efficiently answer "what records link to this subject?". 176 188 177 - ##### blue.microcosm.links.getBacklinks 189 + #### blue.microcosm.links.getBacklinks 178 190 179 191 return records that link to a given subject. 180 192 ··· 190 202 191 203 results are ordered by source record rkey (ascending by default, descending when `reverse=true`). the cursor is stable across new insertions for TID rkey records. 192 204 193 - ##### blue.microcosm.links.getBacklinksCount 205 + #### blue.microcosm.links.getBacklinksCount 194 206 195 207 return the number of records that link to a given subject. 196 208 ··· 200 212 | `source` | no | filter by source collection (same format as `getBacklinks`). | 201 213 202 214 returns `{ count }`. 203 - 204 - ### event stream 205 - 206 - - `GET /stream`: subscribe to the event stream. 207 - - query parameters: 208 - - `cursor` (optional): start streaming from a specific event ID. 209 - 210 - ### stats 211 - 212 - - `GET /stats`: get stats about the database: 213 - - `counts`: counts of repos, records, events, and errors, etc. 214 - - `sizes`: sizes of the database keyspaces on disk, in bytes.