Skip to content

Bobbin

Served by bobbin at https://<bobbin host>/xrpc/<method>. Ours is https://api.tangled.org.

GET.

Params:

  • actor (string, at-uri, required): AT-URI of the sh.tangled.actor.profile record to fetch.

Output:

  • uri (string, at-uri, required)
  • cid (string, cid)
  • value (unknown, required): Embedded sh.tangled.actor.profile record.

GET. Get recent Tangled activity for an actor, grouped by calendar month.

Params:

  • actor (string, did, required): Actor whose activity to return.
  • months (integer, default 7, 1 to 12): Number of UTC calendar months to include, including the current month.

Output:

  • months (array of activityMonth, required)
  • truncated (boolean, required): True when the result reached the server activity-item safety limit.

GET.

Params:

  • actors (array of string, at-uri, required): AT-URIs of the sh.tangled.actor.profile records to fetch. At most 50 per request.

Output:

  • items (array of recordView, required)

GET. Get trending people and repositories.

Output:

  • people (array of org.tangled.actor.defs#profileViewDetailed, required)
  • repos (array of org.tangled.repo.defs#repoViewBasic, required)

GET. Find actors by their verified handle.

Params:

  • q (string, required): The beginning of a handle. A leading @ is optional.
  • limit (integer, default 10, 1 to 100)

Output:

  • actors (array of actor, required)

GET. Wait for a record written to a PDS to reach this bobbin instance, then report what happened to it.

Params:

  • uri (string, at-uri, required): AT-URI of the record that was written.
  • cid (string, cid): CID of the revision that was written, as returned by createRecord, putRecord or applyWrites. Omit it only when awaiting a delete, which has no CID. any other responds with whatever revision of the record settles first.

Output:

  • status (string, required, known values indexed, deleted, rejected): What bobbin did with the record.
  • cid (string, cid): CID of the revision this result is about.
  • reason (string, known values unknownCollection, undecodable, missingBody, notIndexed): Why a rejected record will not appear.
  • detail (string): Opaque error message which can be more detailed than the reason.

Errors:

  • NotSettled: The record had not reached the appview before the wait ran out
  • Overloaded: Too many callers are already waiting, retry later or poll the record instead

No lexicon in this repository.

GET.

Params:

  • subject (string, at-uri, required): Record AT-URI the comments attach to.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Actor DID whose comment authorings to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, at-uri, required): Record AT-URI the reactions target.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Actor DID whose reaction authorings to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, required): Repo DID to list star edges for.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Actor DID whose star authorings to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • actor (string, did, required): DID of the potential stargazer.
  • subject (string, required): Repo DID to check.

Output:

  • uri (string, at-uri, required): Uri of actor’s star record for subject.

GET.

Params:

  • viewer (string, did): TODO: deprecate this and use auth instead.
  • followingOnly (boolean)
  • limit (integer, default 50, 1 to 100)
  • cursor (string)

Output:

  • feed (array of timelineItem, required)
  • cursor (string)

GET.

Params:

  • subject (string, at-uri, required): Record AT-URI the comments attach to.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of org.tangled.feed.defs#commentView, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Actor DID whose comment authorings to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of org.tangled.feed.listComments#listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, at-uri, required): Record AT-URI the reactions target.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Actor DID whose reaction authorings to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of org.tangled.feed.listReactions#listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, required): Repo DID to list star edges for.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Actor DID whose star authorings to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of org.tangled.feed.listStars#listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

No lexicon in this repository.

GET.

Params:

  • subject (string, did, required): Followee DID whose inbound follows to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Actor DID whose follow authorings to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • actor (string, did, required): DID of the potential follower.
  • subject (string, did, required): Followee DID to check.

Output:

  • uri (string, at-uri, required): Uri of actor’s follow record for subject.

GET.

Params:

  • subject (string, did, required): Followee DID whose inbound follows to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Actor DID whose follow authorings to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of org.tangled.graph.listFollows#listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET. List vouches involving one or more actors as seen through a viewer’s vouch network: vouches the viewer’s network placed on an actor, and vouches an actor placed on the viewer’s network. Requires authentication.

Params:

  • actors (array of string, did, required): DIDs of the profiles whose network vouches to list. At most 50 per request.
  • cursor (string): Pagination cursor. Only accepted when a single actor is requested.
  • limit (integer, default 50, 1 to 100): Maximum number of vouches per actor.

Output:

  • items (array of listItem, required)
  • cursor (string)

GET.

Params:

  • subject (string, required): DID of the repo whose label definitions to count.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, required): DID of the repo whose label definitions to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Owner DID whose public-key records to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • publicKey (string, at-uri, required): AT-URI of the sh.tangled.publicKey record to fetch.

Output:

  • uri (string, at-uri, required)
  • cid (string, cid)
  • value (unknown, required): Embedded sh.tangled.publicKey record.

GET.

Params:

  • subject (string, did, required): Owner DID whose public-key records to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

POST. Run an XRPC query and hydrate its response with a data sidecar: typed payloads for every did / at-uri / strong-ref found in the response.

Input:

  • xrpc (string, nsid, required): NSID of the inner query to run, e.g. org.tangled.repo.listRepos.
  • params (unknown): Parameters for the inner query, exactly as it declares them.
  • enrich (array of linkDescriptor, required): Payloads to compute for each found reference.
  • viewer (string, did): DID whose own relation to each reference is looked up for viewer payloads and views. Required when any descriptor requests a viewer payload.

Output:

  • output (unknown, required): The inner query’s response, unmodified.
  • data (unknown, required): Reference (did or at-uri) -> link source -> payload type nsid -> payload. References no descriptor applies to are absent.

Errors:

  • UnknownQuery: The xrpc parameter does not name a query this server can execute
  • InvalidTargetPath: A targets entry is not a valid record path
  • InvalidLinkDescriptor: An enrich entry names an unknown payload type, collection, or path

GET.

Params:

  • subject (string, required): Repo or release identifier whose artifacts to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Actor DID whose artifact authorings to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Repo DID whose collaborator records to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Actor DID whose collaborator authorings to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Repo DID to count forks of.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Repo DID to list issues for
  • author (string, did): Restrict to issues authored by this user DID.
  • state (string, known values open, closed): Restrict to issues whose latest derived state matches.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Repo DID to list pulls for
  • author (string, did): Restrict to pulls authored by this user DID.
  • status (string, known values open, closed, merged): Restrict to pulls whose latest derived status matches.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • subject (string, did, required): Owner DID whose repo records to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • repo (string, at-uri, required): AT-URI of the sh.tangled.repo record to fetch.

Output:

  • uri (string, at-uri, required)
  • cid (string, cid)
  • value (unknown, required): Embedded sh.tangled.repo record.
  • knot (string): Host of the knot named by the #tangled_knot service in the repo’s DID document. Absent when it names none.

GET.

Params:

  • owner (string, did, required): DID of the account that owns the repo.
  • name (string, required): Name of the repo as it appears in its url.

Output:

  • uri (string, at-uri, required)
  • cid (string, cid)
  • value (unknown, required): Embedded sh.tangled.repo record.
  • knot (string): Host of the knot named by the #tangled_knot service in the repo’s DID document. Absent when it names none.

GET.

Params:

  • repoDid (string, did, required): Repo DID whose sh.tangled.repo record to fetch.

Output:

  • uri (string, at-uri, required)
  • cid (string, cid)
  • value (unknown, required): Embedded sh.tangled.repo record.
  • knot (string): Host of the knot named by the #tangled_knot service in the repo’s DID document. Absent when it names none.

GET.

Params:

  • repos (array of string, at-uri, required): AT-URIs of the sh.tangled.repo records to fetch. At most 50 per request.

Output:

  • items (array of recordView, required)

GET.

Params:

  • dids (array of string, did, required): Repo DIDs to fetch. DIDs that resolve to none are omitted from the response.

Output:

  • items (array of listItem, required)

GET.

Params:

  • subject (string, required): Repo or release identifier whose artifacts to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Actor DID whose artifact authorings to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of org.tangled.repo.listArtifacts#listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

org.tangled.repo.listCollaboratorInvitesBy

Section titled “org.tangled.repo.listCollaboratorInvitesBy”

GET. Collaboration offers an actor DID has waiting for them. The inverse of sh.tangled.repo.listCollaboratorInvites, which knots serve only for their own repo.

Params:

  • subject (string, did, required): Actor DID offered collaboration.

Output:

  • items (array of inviteItem, required)
  • pending (array of string, did, required): Knots that this index hasn’t read yet
  • truncated (boolean, required): Per-subject dropped offers from items. If truncated is true, missing offers won’t say if they were withdrawn, same with pending knots.

GET.

Params:

  • subject (string, did, required): Repo DID whose collaborator records to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by effectiveSince.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Actor DID whose collaborator authorings to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of org.tangled.repo.listCollaborators#listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Repo DID to list forks of.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Repo DID to list issues for
  • author (string, did): Restrict to issues authored by this user DID.
  • state (string, known values open, closed): Restrict to issues whose latest derived state matches.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of issueListItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Repo DID to list pulls for
  • author (string, did): Restrict to pulls authored by this user DID.
  • status (string, known values open, closed, merged): Restrict to pulls whose latest derived status matches.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of pullListItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET.

Params:

  • subject (string, did, required): Owner DID whose repo records to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

GET. Full-text and faceted search over indexed records.

Params:

  • q (string): Search query: free text plus key:value qualifiers. See the docs for more information.
  • nsid (string, nsid): Restrict to records of this collection.
  • author (string, did): Restrict to records authored by this DID.
  • repo (string, did): Restrict to records under this repo DID.
  • since (string, datetime): Restrict to records created at or after this time.
  • until (string, datetime): Restrict to records created at or before this time.
  • kind (string, known values issue, pull): Restrict tickets to issues or pull requests.
  • label (array of string): Restrict tickets to those with all of these label names. Requires repo.
  • sort (string, known values relevance, created-desc, created-asc): Result order.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for numbered pages. Mutually exclusive with cursor.
  • limit (integer, default 50, 1 to 1000)

Output:

  • hits (array of hit, required)
  • cursor (string)
  • total (integer): Number of matches across all pages.
  • stateCounts (stateCounts): Matches per ticket state, without the state filters.

Errors:

  • InvalidQuery: The query failed to parse.

GET.

Params:

  • subject (string, required): Scope identifier whose string records to list.

Output:

  • count (integer, required): Total number of matching records.
  • distinctAuthors (integer, required): Number of distinct authors among the matching records.

GET.

Params:

  • uri (string, at-uri, required): AT-URI of the sh.tangled.string record to fetch.

Output:

  • uri (string, at-uri, required)
  • cid (string, cid)
  • value (unknown, required): Embedded sh.tangled.string record.

GET.

Params:

  • subject (string, required): Scope identifier whose string records to list.
  • cursor (string): Pagination cursor
  • offset (integer): Absolute offset for random-access pagination. Mutually exclusive with cursor; offsets drift under concurrent writes, so follow up with the returned cursor.
  • limit (integer, default 50, 1 to 1000)
  • order (string, known values asc, desc, default "desc"): Sort direction by createdAt.

Output:

  • items (array of listItem, required)
  • cursor (string)
  • total (integer): Total items in the full list; omitted for filtered or merged views

No lexicon in this repository.

GET.

Params:

  • uri (string, at-uri, required)

Output:

  • uri (string, at-uri, required)
  • cid (string, cid, required)
  • repo (org.tangled.repo.defs#repoViewBasic, required)
  • author (org.tangled.actor.defs#profileViewBasic, required): The account that opened the ticket, the editor of its first version. Not the account that last edited or closed it.
  • title (org.tangled.markup.markdown#inline, required)
  • body (org.tangled.markup.markdown)
  • state (ticketState, required)
  • tangledLabels (array of org.tangled.label.defs#labelToken)
  • targetBranch (string): Present when the ticket is a pull request.
  • createdAt (string, datetime, required)

No lexicon in this repository.