+3
-19
.gitignore
+3
-19
.gitignore
······
+2
-1
CHANGELOG.md
+2
-1
CHANGELOG.md
···
···
+3
-1
README.md
+3
-1
README.md
···
+11
bump_builtin_lexicons.sh
+11
bump_builtin_lexicons.sh
···
···
+73
lib/atproto/com/atproto/admin/defs.ex
+73
lib/atproto/com/atproto/admin/defs.ex
···
···
+22
lib/atproto/com/atproto/admin/deleteAccount.ex
+22
lib/atproto/com/atproto/admin/deleteAccount.ex
···
···
+29
lib/atproto/com/atproto/admin/disableAccountInvites.ex
+29
lib/atproto/com/atproto/admin/disableAccountInvites.ex
···
···
+25
lib/atproto/com/atproto/admin/disableInviteCodes.ex
+25
lib/atproto/com/atproto/admin/disableInviteCodes.ex
···
···
+28
lib/atproto/com/atproto/admin/enableAccountInvites.ex
+28
lib/atproto/com/atproto/admin/enableAccountInvites.ex
···
···
+26
lib/atproto/com/atproto/admin/getAccountInfo.ex
+26
lib/atproto/com/atproto/admin/getAccountInfo.ex
···
···
+40
lib/atproto/com/atproto/admin/getAccountInfos.ex
+40
lib/atproto/com/atproto/admin/getAccountInfos.ex
···
···
+48
lib/atproto/com/atproto/admin/getInviteCodes.ex
+48
lib/atproto/com/atproto/admin/getInviteCodes.ex
···
···
+48
lib/atproto/com/atproto/admin/getSubjectStatus.ex
+48
lib/atproto/com/atproto/admin/getSubjectStatus.ex
···
···
+44
lib/atproto/com/atproto/admin/searchAccounts.ex
+44
lib/atproto/com/atproto/admin/searchAccounts.ex
···
···
+40
lib/atproto/com/atproto/admin/sendEmail.ex
+40
lib/atproto/com/atproto/admin/sendEmail.ex
···
···+"Additional comment by the sender that won't be used in the email itself but helpful to provide more context for moderators/reviewers",
+29
lib/atproto/com/atproto/admin/updateAccountEmail.ex
+29
lib/atproto/com/atproto/admin/updateAccountEmail.ex
···
···
+25
lib/atproto/com/atproto/admin/updateAccountHandle.ex
+25
lib/atproto/com/atproto/admin/updateAccountHandle.ex
···
···
+25
lib/atproto/com/atproto/admin/updateAccountPassword.ex
+25
lib/atproto/com/atproto/admin/updateAccountPassword.ex
···
···
+30
lib/atproto/com/atproto/admin/updateAccountSigningKey.ex
+30
lib/atproto/com/atproto/admin/updateAccountSigningKey.ex
···
···
+61
lib/atproto/com/atproto/admin/updateSubjectStatus.ex
+61
lib/atproto/com/atproto/admin/updateSubjectStatus.ex
···
···
+27
lib/atproto/com/atproto/identity/defs.ex
+27
lib/atproto/com/atproto/identity/defs.ex
···
···+"The validated handle of the account; or 'handle.invalid' if the handle did not bi-directionally match the DID document.",
+35
lib/atproto/com/atproto/identity/getRecommendedDidCredentials.ex
+35
lib/atproto/com/atproto/identity/getRecommendedDidCredentials.ex
···
···+"Describe the credentials that should be included in the DID doc of an account that is migrating to this service.",
+47
lib/atproto/com/atproto/identity/refreshIdentity.ex
+47
lib/atproto/com/atproto/identity/refreshIdentity.ex
···
···+"Request that the server re-resolve an identity (DID and handle). The server may ignore this request, or require authentication, depending on the role, implementation, and policy of the server.",
+15
lib/atproto/com/atproto/identity/requestPlcOperationSignature.ex
+15
lib/atproto/com/atproto/identity/requestPlcOperationSignature.ex
···
···
+48
lib/atproto/com/atproto/identity/resolveDid.ex
+48
lib/atproto/com/atproto/identity/resolveDid.ex
···
···
+41
lib/atproto/com/atproto/identity/resolveHandle.ex
+41
lib/atproto/com/atproto/identity/resolveHandle.ex
···
···+"Resolves an atproto handle (hostname) to a DID. Does not necessarily bi-directionally verify against the the DID document.",
+48
lib/atproto/com/atproto/identity/resolveIdentity.ex
+48
lib/atproto/com/atproto/identity/resolveIdentity.ex
···
···
+51
lib/atproto/com/atproto/identity/signPlcOperation.ex
+51
lib/atproto/com/atproto/identity/signPlcOperation.ex
···
···
+23
lib/atproto/com/atproto/identity/submitPlcOperation.ex
+23
lib/atproto/com/atproto/identity/submitPlcOperation.ex
···
···+"Validates a PLC operation to ensure that it doesn't violate a service's constraints or get the identity into a bad state, then submits it to the PLC registry",
+29
lib/atproto/com/atproto/identity/updateHandle.ex
+29
lib/atproto/com/atproto/identity/updateHandle.ex
···
···+"Updates the current account's handle. Verifies handle validity, and updates did:plc document if necessary. Implemented by PDS, and requires auth.",
+170
lib/atproto/com/atproto/label/defs.ex
+170
lib/atproto/com/atproto/label/defs.ex
···
···+"What should this label hide in the UI, if applied? 'content' hides all of the target; 'media' hides the images/video/audio; 'none' hides nothing.",+"The value of the label being defined. Must only include lowercase ascii and the '-' character ([a-z-]+).",+"How should a client visually convey this label? 'inform' means neutral and informational; 'alert' means negative and warning; 'none' means show nothing.",+"Metadata tag on an atproto record, published by the author within the record. Note that schemas should use #selfLabels, not #selfLabel.",
+56
lib/atproto/com/atproto/label/queryLabels.ex
+56
lib/atproto/com/atproto/label/queryLabels.ex
···
···+"Find labels relevant to the provided AT-URI patterns. Public endpoint for moderation services, though may return different or additional results with auth.",+"List of AT URI patterns to match (boolean 'OR'). Each may be a prefix (ending with '*'; will match inclusive of the string leading to '*'), or a full URI.",
+47
lib/atproto/com/atproto/label/subscribeLabels.ex
+47
lib/atproto/com/atproto/label/subscribeLabels.ex
···
···+"Subscribe to stream of labels (and negations). Public endpoint implemented by mod services. Uses same sequencing scheme as repo event stream.",
+27
lib/atproto/com/atproto/lexicon/schema.ex
+27
lib/atproto/com/atproto/lexicon/schema.ex
···
···+"Representation of Lexicon schemas themselves, when published as atproto records. Note that the schema language is not defined in Lexicon; this meta schema currently only includes a single version field ('lexicon'). See the atproto specifications for description of the other expected top-level fields ('id', 'defs', etc).",+"Indicates the 'version' of the Lexicon language. Must be '1' for the current atproto/Lexicon schema system.",
+81
lib/atproto/com/atproto/moderation/createReport.ex
+81
lib/atproto/com/atproto/moderation/createReport.ex
···
···+"Submit a moderation report regarding an atproto account or record. Implemented by moderation services (with PDS proxying), and requires auth.",
+101
lib/atproto/com/atproto/moderation/defs.ex
+101
lib/atproto/com/atproto/moderation/defs.ex
···
···+"Misleading identity, affiliation, or content. Prefer new lexicon definition `tools.ozone.report.defs#reasonMisleadingOther`.",+"Reports not falling under another report category. Prefer new lexicon definition `tools.ozone.report.defs#reasonOther`.",+"Rude, harassing, explicit, or otherwise unwelcoming behavior. Prefer new lexicon definition `tools.ozone.report.defs#reasonHarassmentOther`.",+"Unwanted or mislabeled sexual content. Prefer new lexicon definition `tools.ozone.report.defs#reasonSexualUnlabeled`.",+"Spam: frequent unwanted promotion, replies, mentions. Prefer new lexicon definition `tools.ozone.report.defs#reasonMisleadingSpam`.",+"Direct violation of server rules, laws, terms of service. Prefer new lexicon definition `tools.ozone.report.defs#reasonRuleOther`.",
+140
lib/atproto/com/atproto/repo/applyWrites.ex
+140
lib/atproto/com/atproto/repo/applyWrites.ex
···
···+"NOTE: maxLength is redundant with record-key format. Keeping it temporarily to ensure backwards compatibility.",+"Apply a batch transaction of repository creates, updates, and deletes. Requires auth, implemented by PDS.",+"If provided, the entire operation will fail if the current repo commit CID does not match this value. Used to prevent conflicting repo mutations.",+"Can be set to 'false' to skip Lexicon schema validation of record data across all operations, 'true' to require it, or leave unset to validate only for known Lexicons.",
+79
lib/atproto/com/atproto/repo/createRecord.ex
+79
lib/atproto/com/atproto/repo/createRecord.ex
···
···+"Can be set to 'false' to skip Lexicon schema validation of record data, 'true' to require it, or leave unset to validate only for known Lexicons.",
+18
lib/atproto/com/atproto/repo/defs.ex
+18
lib/atproto/com/atproto/repo/defs.ex
···
···
+62
lib/atproto/com/atproto/repo/deleteRecord.ex
+62
lib/atproto/com/atproto/repo/deleteRecord.ex
···
···
+52
lib/atproto/com/atproto/repo/describeRepo.ex
+52
lib/atproto/com/atproto/repo/describeRepo.ex
···
···+"Get information about an account and repository, including the list of collections. Does not require auth.",
+54
lib/atproto/com/atproto/repo/getRecord.ex
+54
lib/atproto/com/atproto/repo/getRecord.ex
···
···+"The CID of the version of the record. If not specified, then return the most recent version.",
+16
lib/atproto/com/atproto/repo/importRepo.ex
+16
lib/atproto/com/atproto/repo/importRepo.ex
···
···
+49
lib/atproto/com/atproto/repo/listMissingBlobs.ex
+49
lib/atproto/com/atproto/repo/listMissingBlobs.ex
···
···+"Returns a list of missing blobs for the requesting account. Intended to be used in the account migration flow.",
+66
lib/atproto/com/atproto/repo/listRecords.ex
+66
lib/atproto/com/atproto/repo/listRecords.ex
···
···+"List a range of records in a repository, matching a specific collection. Does not require auth.",
+81
lib/atproto/com/atproto/repo/putRecord.ex
+81
lib/atproto/com/atproto/repo/putRecord.ex
···
···+"Write a repository record, creating or updating it as needed. Requires auth, implemented by PDS.",+"Compare and swap with the previous record by CID. WARNING: nullable and optional field; may cause problems with golang implementation",+"Can be set to 'false' to skip Lexicon schema validation of record data, 'true' to require it, or leave unset to validate only for known Lexicons.",
+19
lib/atproto/com/atproto/repo/strongRef.ex
+19
lib/atproto/com/atproto/repo/strongRef.ex
···
···
+24
lib/atproto/com/atproto/repo/uploadBlob.ex
+24
lib/atproto/com/atproto/repo/uploadBlob.ex
···
···+"Upload a new blob, to be referenced from a repository record. The blob will be deleted if it is not referenced within a time window (eg, minutes). Blob restrictions (mimetype, size, etc) are enforced when the reference is created. Requires auth, implemented by PDS.",
+15
lib/atproto/com/atproto/server/activateAccount.ex
+15
lib/atproto/com/atproto/server/activateAccount.ex
···
···+"Activates a currently deactivated account. Used to finalize account migration after the account's repo is imported and identity is setup.",
+43
lib/atproto/com/atproto/server/checkAccountStatus.ex
+43
lib/atproto/com/atproto/server/checkAccountStatus.ex
···
···+"Returns the status of an account, especially as pertaining to import or recovery. Can be called many times over the course of an account migration. Requires auth and can only be called pertaining to oneself.",
+32
lib/atproto/com/atproto/server/confirmEmail.ex
+32
lib/atproto/com/atproto/server/confirmEmail.ex
···
···
+83
lib/atproto/com/atproto/server/createAccount.ex
+83
lib/atproto/com/atproto/server/createAccount.ex
···
···+"Initial account password. May need to meet instance-specific password strength requirements.",+"A signed DID PLC operation to be submitted as part of importing an existing account to this instance. NOTE: this optional field may be updated when full account migration is implemented.",
+47
lib/atproto/com/atproto/server/createAppPassword.ex
+47
lib/atproto/com/atproto/server/createAppPassword.ex
···
···+"If an app password has 'privileged' access to possibly sensitive account state. Meant for use with trusted clients.",
+33
lib/atproto/com/atproto/server/createInviteCode.ex
+33
lib/atproto/com/atproto/server/createInviteCode.ex
···
···
+50
lib/atproto/com/atproto/server/createInviteCodes.ex
+50
lib/atproto/com/atproto/server/createInviteCodes.ex
···
···
+63
lib/atproto/com/atproto/server/createSession.ex
+63
lib/atproto/com/atproto/server/createSession.ex
···
···+"When true, instead of throwing error for takendown accounts, a valid response with a narrow scoped token will be returned",+"If active=false, this optional field indicates a possible reason for why the account is not active. If active=false and no status is supplied, then the host makes no claim for why the repository is no longer being hosted.",
+29
lib/atproto/com/atproto/server/deactivateAccount.ex
+29
lib/atproto/com/atproto/server/deactivateAccount.ex
···
···+"Deactivates a currently active account. Stops serving of repo, and future writes to repo until reactivated. Used to finalize account migration with the old host after the account has been activated on the new host.",+"A recommendation to server as to how long they should hold onto the deactivated account before deleting.",
+42
lib/atproto/com/atproto/server/defs.ex
+42
lib/atproto/com/atproto/server/defs.ex
···
···
+28
lib/atproto/com/atproto/server/deleteAccount.ex
+28
lib/atproto/com/atproto/server/deleteAccount.ex
···
···+"Delete an actor's account with a token and password. Can only be called after requesting a deletion token. Requires auth.",
+14
lib/atproto/com/atproto/server/deleteSession.ex
+14
lib/atproto/com/atproto/server/deleteSession.ex
···
···
+61
lib/atproto/com/atproto/server/describeServer.ex
+61
lib/atproto/com/atproto/server/describeServer.ex
···
···
+43
lib/atproto/com/atproto/server/getAccountInviteCodes.ex
+43
lib/atproto/com/atproto/server/getAccountInviteCodes.ex
···
···
+52
lib/atproto/com/atproto/server/getServiceAuth.ex
+52
lib/atproto/com/atproto/server/getServiceAuth.ex
···
···+"Indicates that the requested expiration date is not a valid. May be in the past or may be reliant on the requested scopes.",+"The time in Unix Epoch seconds that the JWT expires. Defaults to 60 seconds in the future. The service may enforce certain time bounds on tokens depending on the requested scope.",
+36
lib/atproto/com/atproto/server/getSession.ex
+36
lib/atproto/com/atproto/server/getSession.ex
···
···+"If active=false, this optional field indicates a possible reason for why the account is not active. If active=false and no status is supplied, then the host makes no claim for why the repository is no longer being hosted.",
+37
lib/atproto/com/atproto/server/listAppPasswords.ex
+37
lib/atproto/com/atproto/server/listAppPasswords.ex
···
···
+37
lib/atproto/com/atproto/server/refreshSession.ex
+37
lib/atproto/com/atproto/server/refreshSession.ex
···
···+"Refresh an authentication session. Requires auth using the 'refreshJwt' (not the 'accessJwt').",
+14
lib/atproto/com/atproto/server/requestAccountDelete.ex
+14
lib/atproto/com/atproto/server/requestAccountDelete.ex
···
···
+14
lib/atproto/com/atproto/server/requestEmailConfirmation.ex
+14
lib/atproto/com/atproto/server/requestEmailConfirmation.ex
···
···
+22
lib/atproto/com/atproto/server/requestEmailUpdate.ex
+22
lib/atproto/com/atproto/server/requestEmailUpdate.ex
···
···
+22
lib/atproto/com/atproto/server/requestPasswordReset.ex
+22
lib/atproto/com/atproto/server/requestPasswordReset.ex
···
···
+42
lib/atproto/com/atproto/server/reserveSigningKey.ex
+42
lib/atproto/com/atproto/server/reserveSigningKey.ex
···
···+"Reserve a repo signing key, for use with account creation. Necessary so that a DID PLC update operation can be constructed during an account migraiton. Public and does not require auth; implemented by PDS. NOTE: this endpoint may change when full account migration is implemented.",
+26
lib/atproto/com/atproto/server/resetPassword.ex
+26
lib/atproto/com/atproto/server/resetPassword.ex
···
···
+22
lib/atproto/com/atproto/server/revokeAppPassword.ex
+22
lib/atproto/com/atproto/server/revokeAppPassword.ex
···
···
+35
lib/atproto/com/atproto/server/updateEmail.ex
+35
lib/atproto/com/atproto/server/updateEmail.ex
···
···+"Requires a token from com.atproto.sever.requestEmailUpdate if the account's email has been confirmed.",
+14
lib/atproto/com/atproto/sync/defs.ex
+14
lib/atproto/com/atproto/sync/defs.ex
···
···
+39
lib/atproto/com/atproto/sync/getBlob.ex
+39
lib/atproto/com/atproto/sync/getBlob.ex
···
···+"Get a blob associated with a given account. Returns the full blob as originally uploaded. Does not require auth; implemented by PDS.",
+38
lib/atproto/com/atproto/sync/getBlocks.ex
+38
lib/atproto/com/atproto/sync/getBlocks.ex
···
···+"Get data blocks from a given repo, by CID. For example, intermediate MST nodes, or records. Does not require auth; implemented by PDS.",
+26
lib/atproto/com/atproto/sync/getCheckout.ex
+26
lib/atproto/com/atproto/sync/getCheckout.ex
···
···
+34
lib/atproto/com/atproto/sync/getHead.ex
+34
lib/atproto/com/atproto/sync/getHead.ex
···
···
+50
lib/atproto/com/atproto/sync/getHostStatus.ex
+50
lib/atproto/com/atproto/sync/getHostStatus.ex
···
···+"Returns information about a specified upstream host, as consumed by the server. Implemented by relays.",+"Number of accounts on the server which are associated with the upstream host. Note that the upstream may actually have more accounts.",+"Recent repo stream event sequence number. May be delayed from actual stream processing (eg, persisted cursor not in-memory cursor).",
+43
lib/atproto/com/atproto/sync/getLatestCommit.ex
+43
lib/atproto/com/atproto/sync/getLatestCommit.ex
···
···
+40
lib/atproto/com/atproto/sync/getRecord.ex
+40
lib/atproto/com/atproto/sync/getRecord.ex
···
···+"Get data blocks needed to prove the existence or non-existence of record in the current version of repo. Does not require auth.",
+38
lib/atproto/com/atproto/sync/getRepo.ex
+38
lib/atproto/com/atproto/sync/getRepo.ex
···
···+"Download a repository export as CAR file. Optionally only a 'diff' since a previous revision. Does not require auth; implemented by PDS.",
+56
lib/atproto/com/atproto/sync/getRepoStatus.ex
+56
lib/atproto/com/atproto/sync/getRepoStatus.ex
···
···+"Get the hosting status for a repository, on this server. Expected to be implemented by PDS and Relay.",+"If active=false, this optional field indicates a possible reason for why the account is not active. If active=false and no status is supplied, then the host makes no claim for why the repository is no longer being hosted.",
+58
lib/atproto/com/atproto/sync/listBlobs.ex
+58
lib/atproto/com/atproto/sync/listBlobs.ex
···
···+"List blob CIDs for an account, since some repo revision. Does not require auth; implemented by PDS.",
+63
lib/atproto/com/atproto/sync/listHosts.ex
+63
lib/atproto/com/atproto/sync/listHosts.ex
···
···+"Recent repo stream event sequence number. May be delayed from actual stream processing (eg, persisted cursor not in-memory cursor).",+"Enumerates upstream hosts (eg, PDS or relay instances) that this service consumes from. Implemented by relays.",+"Sort order is not formally specified. Recommended order is by time host was first seen by the server, with oldest first.",
+68
lib/atproto/com/atproto/sync/listRepos.ex
+68
lib/atproto/com/atproto/sync/listRepos.ex
···
···+"Enumerates all the DID, rev, and commit CID for all repos hosted by this service. Does not require auth; implemented by PDS and Relay.",+"If active=false, this optional field indicates a possible reason for why the account is not active. If active=false and no status is supplied, then the host makes no claim for why the repository is no longer being hosted.",
+50
lib/atproto/com/atproto/sync/listReposByCollection.ex
+50
lib/atproto/com/atproto/sync/listReposByCollection.ex
···
···+"Maximum size of response set. Recommend setting a large maximum (1000+) when enumerating large DID lists.",
+29
lib/atproto/com/atproto/sync/notifyOfUpdate.ex
+29
lib/atproto/com/atproto/sync/notifyOfUpdate.ex
···
···+"Notify a crawling service of a recent update, and that crawling should resume. Intended use is after a gap between repo stream events caused the crawling service to disconnect. Does not require auth; implemented by Relay. DEPRECATED: just use com.atproto.sync.requestCrawl",
+30
lib/atproto/com/atproto/sync/requestCrawl.ex
+30
lib/atproto/com/atproto/sync/requestCrawl.ex
···
···+"Request a service to persistently crawl hosted repos. Expected use is new PDS instances declaring their existence to Relays. Does not require auth.",
+237
lib/atproto/com/atproto/sync/subscribeRepos.ex
+237
lib/atproto/com/atproto/sync/subscribeRepos.ex
···
···+"Represents a change to an account's status on a host (eg, PDS or Relay). The semantics of this event are that the status is at the host which emitted the event, not necessarily that at the currently active PDS. Eg, a Relay takedown would emit a takedown with active=false, even if the PDS is still active.",+"Indicates that the account has a repository which can be fetched from the host that emitted this event.",+"Represents an update of repository state. Note that empty commits are allowed, which include no repo data changes, but an update to rev and signature.",+"DEPRECATED -- will soon always be empty. List of new blobs (by CID) referenced by records in this commit.",+"CAR file containing relevant blocks, as a diff since the previous repo state. The commit must be included as a block, and the commit block CID must be the first entry in the CAR header 'roots' list.",+"The root CID of the MST tree for the previous commit from this repo (indicated by the 'since' revision field in this message). Corresponds to the 'data' field in the repo commit object. NOTE: this field is effectively required for the 'inductive' version of firehose.",+"The rev of the emitted commit. Note that this information is also in the commit object included in blocks, unless this is a tooBig event.",+"DEPRECATED -- replaced by #sync event and data limits. Indicates that this commit contained too many ops, or data size was too large. Consumers will need to make a separate request to get missing data.",+"Represents a change to an account's identity. Could be an updated handle, signing key, or pds hosting endpoint. Serves as a prod to all downstream services to refresh their identity cache.",+"The current handle for the account, or 'handle.invalid' if validation fails. This field is optional, might have been validated or passed-through from an upstream source. Semantics and behaviors for PDS vs Relay may evolve in the future; see atproto specs for more details.",+"Repository event stream, aka Firehose endpoint. Outputs repo commits with diff data, and identity update events, for all repositories on the current server. See the atproto specifications for details around stream sequencing, repo versioning, CAR diff format, and more. Public and does not require auth; implemented by PDS and Relay.",+"If the consumer of the stream can not keep up with events, and a backlog gets too large, the server will drop the connection.",+"For updates and deletes, the previous record CID (required for inductive firehose). For creations, field should not be defined.",+"Updates the repo to a new state, without necessarily including that state on the firehose. Used to recover from broken commit streams, data loss incidents, or in situations where upstream host does not know recent state of the repository.",+"CAR file containing the commit, as a block. The CAR header must include the commit block CID as the first 'root'.",