···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.identity.defs
66+77+// IdentityDefs_IdentityInfo is a "identityInfo" in the com.atproto.identity.defs schema.
88+type IdentityDefs_IdentityInfo struct {
99+ Did string `json:"did" cborgen:"did"`
1010+ // didDoc: The complete DID document for the identity.
1111+ DidDoc interface{} `json:"didDoc" cborgen:"didDoc"`
1212+ // handle: The validated handle of the account; or 'handle.invalid' if the handle did not bi-directionally match the DID document.
1313+ Handle string `json:"handle" cborgen:"handle"`
1414+}
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.identity.requestPlcOperationSignature
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// IdentityRequestPlcOperationSignature calls the XRPC method "com.atproto.identity.requestPlcOperationSignature".
1414+func IdentityRequestPlcOperationSignature(ctx context.Context, c *xrpc.Client) error {
1515+ if err := c.Do(ctx, xrpc.Procedure, "", "com.atproto.identity.requestPlcOperationSignature", nil, nil, nil); err != nil {
1616+ return err
1717+ }
1818+1919+ return nil
2020+}
+33
api/atproto/identityresolveDid.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.identity.resolveDid
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// IdentityResolveDid_Output is the output of a com.atproto.identity.resolveDid call.
1414+type IdentityResolveDid_Output struct {
1515+ // didDoc: The complete DID document for the identity.
1616+ DidDoc interface{} `json:"didDoc" cborgen:"didDoc"`
1717+}
1818+1919+// IdentityResolveDid calls the XRPC method "com.atproto.identity.resolveDid".
2020+//
2121+// did: DID to resolve.
2222+func IdentityResolveDid(ctx context.Context, c *xrpc.Client, did string) (*IdentityResolveDid_Output, error) {
2323+ var out IdentityResolveDid_Output
2424+2525+ params := map[string]interface{}{
2626+ "did": did,
2727+ }
2828+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.identity.resolveDid", params, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+32
api/atproto/identityresolveHandle.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.identity.resolveHandle
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// IdentityResolveHandle_Output is the output of a com.atproto.identity.resolveHandle call.
1414+type IdentityResolveHandle_Output struct {
1515+ Did string `json:"did" cborgen:"did"`
1616+}
1717+1818+// IdentityResolveHandle calls the XRPC method "com.atproto.identity.resolveHandle".
1919+//
2020+// handle: The handle to resolve.
2121+func IdentityResolveHandle(ctx context.Context, c *xrpc.Client, handle string) (*IdentityResolveHandle_Output, error) {
2222+ var out IdentityResolveHandle_Output
2323+2424+ params := map[string]interface{}{
2525+ "handle": handle,
2626+ }
2727+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.identity.resolveHandle", params, nil, &out); err != nil {
2828+ return nil, err
2929+ }
3030+3131+ return &out, nil
3232+}
+27
api/atproto/identityresolveIdentity.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.identity.resolveIdentity
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// IdentityResolveIdentity calls the XRPC method "com.atproto.identity.resolveIdentity".
1414+//
1515+// identifier: Handle or DID to resolve.
1616+func IdentityResolveIdentity(ctx context.Context, c *xrpc.Client, identifier string) (*IdentityDefs_IdentityInfo, error) {
1717+ var out IdentityDefs_IdentityInfo
1818+1919+ params := map[string]interface{}{
2020+ "identifier": identifier,
2121+ }
2222+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.identity.resolveIdentity", params, nil, &out); err != nil {
2323+ return nil, err
2424+ }
2525+2626+ return &out, nil
2727+}
+38
api/atproto/identitysignPlcOperation.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.identity.signPlcOperation
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/lex/util"
1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// IdentitySignPlcOperation_Input is the input argument to a com.atproto.identity.signPlcOperation call.
1515+type IdentitySignPlcOperation_Input struct {
1616+ AlsoKnownAs []string `json:"alsoKnownAs,omitempty" cborgen:"alsoKnownAs,omitempty"`
1717+ RotationKeys []string `json:"rotationKeys,omitempty" cborgen:"rotationKeys,omitempty"`
1818+ Services *util.LexiconTypeDecoder `json:"services,omitempty" cborgen:"services,omitempty"`
1919+ // token: A token received through com.atproto.identity.requestPlcOperationSignature
2020+ Token *string `json:"token,omitempty" cborgen:"token,omitempty"`
2121+ VerificationMethods *util.LexiconTypeDecoder `json:"verificationMethods,omitempty" cborgen:"verificationMethods,omitempty"`
2222+}
2323+2424+// IdentitySignPlcOperation_Output is the output of a com.atproto.identity.signPlcOperation call.
2525+type IdentitySignPlcOperation_Output struct {
2626+ // operation: A signed DID PLC operation.
2727+ Operation *util.LexiconTypeDecoder `json:"operation" cborgen:"operation"`
2828+}
2929+3030+// IdentitySignPlcOperation calls the XRPC method "com.atproto.identity.signPlcOperation".
3131+func IdentitySignPlcOperation(ctx context.Context, c *xrpc.Client, input *IdentitySignPlcOperation_Input) (*IdentitySignPlcOperation_Output, error) {
3232+ var out IdentitySignPlcOperation_Output
3333+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.identity.signPlcOperation", nil, input, &out); err != nil {
3434+ return nil, err
3535+ }
3636+3737+ return &out, nil
3838+}
+26
api/atproto/identitysubmitPlcOperation.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.identity.submitPlcOperation
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/lex/util"
1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// IdentitySubmitPlcOperation_Input is the input argument to a com.atproto.identity.submitPlcOperation call.
1515+type IdentitySubmitPlcOperation_Input struct {
1616+ Operation *util.LexiconTypeDecoder `json:"operation" cborgen:"operation"`
1717+}
1818+1919+// IdentitySubmitPlcOperation calls the XRPC method "com.atproto.identity.submitPlcOperation".
2020+func IdentitySubmitPlcOperation(ctx context.Context, c *xrpc.Client, input *IdentitySubmitPlcOperation_Input) error {
2121+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.identity.submitPlcOperation", nil, input, nil); err != nil {
2222+ return err
2323+ }
2424+2525+ return nil
2626+}
+26
api/atproto/identityupdateHandle.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.identity.updateHandle
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// IdentityUpdateHandle_Input is the input argument to a com.atproto.identity.updateHandle call.
1414+type IdentityUpdateHandle_Input struct {
1515+ // handle: The new handle.
1616+ Handle string `json:"handle" cborgen:"handle"`
1717+}
1818+1919+// IdentityUpdateHandle calls the XRPC method "com.atproto.identity.updateHandle".
2020+func IdentityUpdateHandle(ctx context.Context, c *xrpc.Client, input *IdentityUpdateHandle_Input) error {
2121+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.identity.updateHandle", nil, input, nil); err != nil {
2222+ return err
2323+ }
2424+2525+ return nil
2626+}
+80
api/atproto/labeldefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.label.defs
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+// LabelDefs_Label is a "label" in the com.atproto.label.defs schema.
1212+//
1313+// Metadata tag on an atproto resource (eg, repo or record).
1414+type LabelDefs_Label struct {
1515+ // cid: Optionally, CID specifying the specific version of 'uri' resource this label applies to.
1616+ Cid *string `json:"cid,omitempty" cborgen:"cid,omitempty"`
1717+ // cts: Timestamp when this label was created.
1818+ Cts string `json:"cts" cborgen:"cts"`
1919+ // exp: Timestamp at which this label expires (no longer applies).
2020+ Exp *string `json:"exp,omitempty" cborgen:"exp,omitempty"`
2121+ // neg: If true, this is a negation label, overwriting a previous label.
2222+ Neg *bool `json:"neg,omitempty" cborgen:"neg,omitempty"`
2323+ // sig: Signature of dag-cbor encoded label.
2424+ Sig util.LexBytes `json:"sig,omitempty" cborgen:"sig,omitempty"`
2525+ // src: DID of the actor who created this label.
2626+ Src string `json:"src" cborgen:"src"`
2727+ // uri: AT URI of the record, repository (account), or other resource that this label applies to.
2828+ Uri string `json:"uri" cborgen:"uri"`
2929+ // val: The short string name of the value or type of this label.
3030+ Val string `json:"val" cborgen:"val"`
3131+ // ver: The AT Protocol version of the label object.
3232+ Ver *int64 `json:"ver,omitempty" cborgen:"ver,omitempty"`
3333+}
3434+3535+// LabelDefs_LabelValueDefinition is a "labelValueDefinition" in the com.atproto.label.defs schema.
3636+//
3737+// Declares a label value and its expected interpretations and behaviors.
3838+type LabelDefs_LabelValueDefinition struct {
3939+ // adultOnly: Does the user need to have adult content enabled in order to configure this label?
4040+ AdultOnly *bool `json:"adultOnly,omitempty" cborgen:"adultOnly,omitempty"`
4141+ // blurs: 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.
4242+ Blurs string `json:"blurs" cborgen:"blurs"`
4343+ // defaultSetting: The default setting for this label.
4444+ DefaultSetting *string `json:"defaultSetting,omitempty" cborgen:"defaultSetting,omitempty"`
4545+ // identifier: The value of the label being defined. Must only include lowercase ascii and the '-' character ([a-z-]+).
4646+ Identifier string `json:"identifier" cborgen:"identifier"`
4747+ Locales []*LabelDefs_LabelValueDefinitionStrings `json:"locales" cborgen:"locales"`
4848+ // severity: How should a client visually convey this label? 'inform' means neutral and informational; 'alert' means negative and warning; 'none' means show nothing.
4949+ Severity string `json:"severity" cborgen:"severity"`
5050+}
5151+5252+// LabelDefs_LabelValueDefinitionStrings is a "labelValueDefinitionStrings" in the com.atproto.label.defs schema.
5353+//
5454+// Strings which describe the label in the UI, localized into a specific language.
5555+type LabelDefs_LabelValueDefinitionStrings struct {
5656+ // description: A longer description of what the label means and why it might be applied.
5757+ Description string `json:"description" cborgen:"description"`
5858+ // lang: The code of the language these strings are written in.
5959+ Lang string `json:"lang" cborgen:"lang"`
6060+ // name: A short human-readable name for the label.
6161+ Name string `json:"name" cborgen:"name"`
6262+}
6363+6464+// LabelDefs_SelfLabel is a "selfLabel" in the com.atproto.label.defs schema.
6565+//
6666+// Metadata tag on an atproto record, published by the author within the record. Note that schemas should use #selfLabels, not #selfLabel.
6767+type LabelDefs_SelfLabel struct {
6868+ // val: The short string name of the value or type of this label.
6969+ Val string `json:"val" cborgen:"val"`
7070+}
7171+7272+// LabelDefs_SelfLabels is a "selfLabels" in the com.atproto.label.defs schema.
7373+//
7474+// Metadata tags on an atproto record, published by the author within the record.
7575+//
7676+// RECORDTYPE: LabelDefs_SelfLabels
7777+type LabelDefs_SelfLabels struct {
7878+ LexiconTypeID string `json:"$type,const=com.atproto.label.defs#selfLabels" cborgen:"$type,const=com.atproto.label.defs#selfLabels"`
7979+ Values []*LabelDefs_SelfLabel `json:"values" cborgen:"values,preservenil"`
8080+}
+37
api/atproto/labelqueryLabels.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.label.queryLabels
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// LabelQueryLabels_Output is the output of a com.atproto.label.queryLabels call.
1414+type LabelQueryLabels_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Labels []*LabelDefs_Label `json:"labels" cborgen:"labels"`
1717+}
1818+1919+// LabelQueryLabels calls the XRPC method "com.atproto.label.queryLabels".
2020+//
2121+// sources: Optional list of label sources (DIDs) to filter on.
2222+// uriPatterns: 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.
2323+func LabelQueryLabels(ctx context.Context, c *xrpc.Client, cursor string, limit int64, sources []string, uriPatterns []string) (*LabelQueryLabels_Output, error) {
2424+ var out LabelQueryLabels_Output
2525+2626+ params := map[string]interface{}{
2727+ "cursor": cursor,
2828+ "limit": limit,
2929+ "sources": sources,
3030+ "uriPatterns": uriPatterns,
3131+ }
3232+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.label.queryLabels", params, nil, &out); err != nil {
3333+ return nil, err
3434+ }
3535+3636+ return &out, nil
3737+}
+17
api/atproto/labelsubscribeLabels.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.label.subscribeLabels
66+77+// LabelSubscribeLabels_Info is a "info" in the com.atproto.label.subscribeLabels schema.
88+type LabelSubscribeLabels_Info struct {
99+ Message *string `json:"message,omitempty" cborgen:"message,omitempty"`
1010+ Name string `json:"name" cborgen:"name"`
1111+}
1212+1313+// LabelSubscribeLabels_Labels is a "labels" in the com.atproto.label.subscribeLabels schema.
1414+type LabelSubscribeLabels_Labels struct {
1515+ Labels []*LabelDefs_Label `json:"labels" cborgen:"labels"`
1616+ Seq int64 `json:"seq" cborgen:"seq"`
1717+}
+19
api/atproto/lexiconschema.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.lexicon.schema
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("com.atproto.lexicon.schema", &LexiconSchema{})
1313+} //
1414+// RECORDTYPE: LexiconSchema
1515+type LexiconSchema struct {
1616+ LexiconTypeID string `json:"$type,const=com.atproto.lexicon.schema" cborgen:"$type,const=com.atproto.lexicon.schema"`
1717+ // lexicon: Indicates the 'version' of the Lexicon language. Must be '1' for the current atproto/Lexicon schema system.
1818+ Lexicon int64 `json:"lexicon" cborgen:"lexicon"`
1919+}
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.moderation.defs
+190
api/atproto/repoapplyWrites.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.applyWrites
66+77+import (
88+ "context"
99+ "encoding/json"
1010+ "fmt"
1111+1212+ "github.com/bluesky-social/indigo/lex/util"
1313+ "github.com/bluesky-social/indigo/xrpc"
1414+)
1515+1616+// RepoApplyWrites_Create is a "create" in the com.atproto.repo.applyWrites schema.
1717+//
1818+// Operation which creates a new record.
1919+//
2020+// RECORDTYPE: RepoApplyWrites_Create
2121+type RepoApplyWrites_Create struct {
2222+ LexiconTypeID string `json:"$type,const=com.atproto.repo.applyWrites#create" cborgen:"$type,const=com.atproto.repo.applyWrites#create"`
2323+ Collection string `json:"collection" cborgen:"collection"`
2424+ // rkey: NOTE: maxLength is redundant with record-key format. Keeping it temporarily to ensure backwards compatibility.
2525+ Rkey *string `json:"rkey,omitempty" cborgen:"rkey,omitempty"`
2626+ Value *util.LexiconTypeDecoder `json:"value" cborgen:"value"`
2727+}
2828+2929+// RepoApplyWrites_CreateResult is a "createResult" in the com.atproto.repo.applyWrites schema.
3030+//
3131+// RECORDTYPE: RepoApplyWrites_CreateResult
3232+type RepoApplyWrites_CreateResult struct {
3333+ LexiconTypeID string `json:"$type,const=com.atproto.repo.applyWrites#createResult" cborgen:"$type,const=com.atproto.repo.applyWrites#createResult"`
3434+ Cid string `json:"cid" cborgen:"cid"`
3535+ Uri string `json:"uri" cborgen:"uri"`
3636+ ValidationStatus *string `json:"validationStatus,omitempty" cborgen:"validationStatus,omitempty"`
3737+}
3838+3939+// RepoApplyWrites_Delete is a "delete" in the com.atproto.repo.applyWrites schema.
4040+//
4141+// Operation which deletes an existing record.
4242+//
4343+// RECORDTYPE: RepoApplyWrites_Delete
4444+type RepoApplyWrites_Delete struct {
4545+ LexiconTypeID string `json:"$type,const=com.atproto.repo.applyWrites#delete" cborgen:"$type,const=com.atproto.repo.applyWrites#delete"`
4646+ Collection string `json:"collection" cborgen:"collection"`
4747+ Rkey string `json:"rkey" cborgen:"rkey"`
4848+}
4949+5050+// RepoApplyWrites_DeleteResult is a "deleteResult" in the com.atproto.repo.applyWrites schema.
5151+//
5252+// RECORDTYPE: RepoApplyWrites_DeleteResult
5353+type RepoApplyWrites_DeleteResult struct {
5454+ LexiconTypeID string `json:"$type,const=com.atproto.repo.applyWrites#deleteResult" cborgen:"$type,const=com.atproto.repo.applyWrites#deleteResult"`
5555+}
5656+5757+// RepoApplyWrites_Input is the input argument to a com.atproto.repo.applyWrites call.
5858+type RepoApplyWrites_Input struct {
5959+ // repo: The handle or DID of the repo (aka, current account).
6060+ Repo string `json:"repo" cborgen:"repo"`
6161+ // swapCommit: If provided, the entire operation will fail if the current repo commit CID does not match this value. Used to prevent conflicting repo mutations.
6262+ SwapCommit *string `json:"swapCommit,omitempty" cborgen:"swapCommit,omitempty"`
6363+ // validate: 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.
6464+ Validate *bool `json:"validate,omitempty" cborgen:"validate,omitempty"`
6565+ Writes []*RepoApplyWrites_Input_Writes_Elem `json:"writes" cborgen:"writes"`
6666+}
6767+6868+type RepoApplyWrites_Input_Writes_Elem struct {
6969+ RepoApplyWrites_Create *RepoApplyWrites_Create
7070+ RepoApplyWrites_Update *RepoApplyWrites_Update
7171+ RepoApplyWrites_Delete *RepoApplyWrites_Delete
7272+}
7373+7474+func (t *RepoApplyWrites_Input_Writes_Elem) MarshalJSON() ([]byte, error) {
7575+ if t.RepoApplyWrites_Create != nil {
7676+ t.RepoApplyWrites_Create.LexiconTypeID = "com.atproto.repo.applyWrites#create"
7777+ return json.Marshal(t.RepoApplyWrites_Create)
7878+ }
7979+ if t.RepoApplyWrites_Update != nil {
8080+ t.RepoApplyWrites_Update.LexiconTypeID = "com.atproto.repo.applyWrites#update"
8181+ return json.Marshal(t.RepoApplyWrites_Update)
8282+ }
8383+ if t.RepoApplyWrites_Delete != nil {
8484+ t.RepoApplyWrites_Delete.LexiconTypeID = "com.atproto.repo.applyWrites#delete"
8585+ return json.Marshal(t.RepoApplyWrites_Delete)
8686+ }
8787+ return nil, fmt.Errorf("cannot marshal empty enum")
8888+}
8989+func (t *RepoApplyWrites_Input_Writes_Elem) UnmarshalJSON(b []byte) error {
9090+ typ, err := util.TypeExtract(b)
9191+ if err != nil {
9292+ return err
9393+ }
9494+9595+ switch typ {
9696+ case "com.atproto.repo.applyWrites#create":
9797+ t.RepoApplyWrites_Create = new(RepoApplyWrites_Create)
9898+ return json.Unmarshal(b, t.RepoApplyWrites_Create)
9999+ case "com.atproto.repo.applyWrites#update":
100100+ t.RepoApplyWrites_Update = new(RepoApplyWrites_Update)
101101+ return json.Unmarshal(b, t.RepoApplyWrites_Update)
102102+ case "com.atproto.repo.applyWrites#delete":
103103+ t.RepoApplyWrites_Delete = new(RepoApplyWrites_Delete)
104104+ return json.Unmarshal(b, t.RepoApplyWrites_Delete)
105105+106106+ default:
107107+ return fmt.Errorf("closed enums must have a matching value")
108108+ }
109109+}
110110+111111+// RepoApplyWrites_Output is the output of a com.atproto.repo.applyWrites call.
112112+type RepoApplyWrites_Output struct {
113113+ Commit *RepoDefs_CommitMeta `json:"commit,omitempty" cborgen:"commit,omitempty"`
114114+ Results []*RepoApplyWrites_Output_Results_Elem `json:"results,omitempty" cborgen:"results,omitempty"`
115115+}
116116+117117+type RepoApplyWrites_Output_Results_Elem struct {
118118+ RepoApplyWrites_CreateResult *RepoApplyWrites_CreateResult
119119+ RepoApplyWrites_UpdateResult *RepoApplyWrites_UpdateResult
120120+ RepoApplyWrites_DeleteResult *RepoApplyWrites_DeleteResult
121121+}
122122+123123+func (t *RepoApplyWrites_Output_Results_Elem) MarshalJSON() ([]byte, error) {
124124+ if t.RepoApplyWrites_CreateResult != nil {
125125+ t.RepoApplyWrites_CreateResult.LexiconTypeID = "com.atproto.repo.applyWrites#createResult"
126126+ return json.Marshal(t.RepoApplyWrites_CreateResult)
127127+ }
128128+ if t.RepoApplyWrites_UpdateResult != nil {
129129+ t.RepoApplyWrites_UpdateResult.LexiconTypeID = "com.atproto.repo.applyWrites#updateResult"
130130+ return json.Marshal(t.RepoApplyWrites_UpdateResult)
131131+ }
132132+ if t.RepoApplyWrites_DeleteResult != nil {
133133+ t.RepoApplyWrites_DeleteResult.LexiconTypeID = "com.atproto.repo.applyWrites#deleteResult"
134134+ return json.Marshal(t.RepoApplyWrites_DeleteResult)
135135+ }
136136+ return nil, fmt.Errorf("cannot marshal empty enum")
137137+}
138138+func (t *RepoApplyWrites_Output_Results_Elem) UnmarshalJSON(b []byte) error {
139139+ typ, err := util.TypeExtract(b)
140140+ if err != nil {
141141+ return err
142142+ }
143143+144144+ switch typ {
145145+ case "com.atproto.repo.applyWrites#createResult":
146146+ t.RepoApplyWrites_CreateResult = new(RepoApplyWrites_CreateResult)
147147+ return json.Unmarshal(b, t.RepoApplyWrites_CreateResult)
148148+ case "com.atproto.repo.applyWrites#updateResult":
149149+ t.RepoApplyWrites_UpdateResult = new(RepoApplyWrites_UpdateResult)
150150+ return json.Unmarshal(b, t.RepoApplyWrites_UpdateResult)
151151+ case "com.atproto.repo.applyWrites#deleteResult":
152152+ t.RepoApplyWrites_DeleteResult = new(RepoApplyWrites_DeleteResult)
153153+ return json.Unmarshal(b, t.RepoApplyWrites_DeleteResult)
154154+155155+ default:
156156+ return fmt.Errorf("closed enums must have a matching value")
157157+ }
158158+}
159159+160160+// RepoApplyWrites_Update is a "update" in the com.atproto.repo.applyWrites schema.
161161+//
162162+// Operation which updates an existing record.
163163+//
164164+// RECORDTYPE: RepoApplyWrites_Update
165165+type RepoApplyWrites_Update struct {
166166+ LexiconTypeID string `json:"$type,const=com.atproto.repo.applyWrites#update" cborgen:"$type,const=com.atproto.repo.applyWrites#update"`
167167+ Collection string `json:"collection" cborgen:"collection"`
168168+ Rkey string `json:"rkey" cborgen:"rkey"`
169169+ Value *util.LexiconTypeDecoder `json:"value" cborgen:"value"`
170170+}
171171+172172+// RepoApplyWrites_UpdateResult is a "updateResult" in the com.atproto.repo.applyWrites schema.
173173+//
174174+// RECORDTYPE: RepoApplyWrites_UpdateResult
175175+type RepoApplyWrites_UpdateResult struct {
176176+ LexiconTypeID string `json:"$type,const=com.atproto.repo.applyWrites#updateResult" cborgen:"$type,const=com.atproto.repo.applyWrites#updateResult"`
177177+ Cid string `json:"cid" cborgen:"cid"`
178178+ Uri string `json:"uri" cborgen:"uri"`
179179+ ValidationStatus *string `json:"validationStatus,omitempty" cborgen:"validationStatus,omitempty"`
180180+}
181181+182182+// RepoApplyWrites calls the XRPC method "com.atproto.repo.applyWrites".
183183+func RepoApplyWrites(ctx context.Context, c *xrpc.Client, input *RepoApplyWrites_Input) (*RepoApplyWrites_Output, error) {
184184+ var out RepoApplyWrites_Output
185185+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.repo.applyWrites", nil, input, &out); err != nil {
186186+ return nil, err
187187+ }
188188+189189+ return &out, nil
190190+}
+46
api/atproto/repocreateRecord.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.createRecord
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/lex/util"
1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// RepoCreateRecord_Input is the input argument to a com.atproto.repo.createRecord call.
1515+type RepoCreateRecord_Input struct {
1616+ // collection: The NSID of the record collection.
1717+ Collection string `json:"collection" cborgen:"collection"`
1818+ // record: The record itself. Must contain a $type field.
1919+ Record *util.LexiconTypeDecoder `json:"record" cborgen:"record"`
2020+ // repo: The handle or DID of the repo (aka, current account).
2121+ Repo string `json:"repo" cborgen:"repo"`
2222+ // rkey: The Record Key.
2323+ Rkey *string `json:"rkey,omitempty" cborgen:"rkey,omitempty"`
2424+ // swapCommit: Compare and swap with the previous commit by CID.
2525+ SwapCommit *string `json:"swapCommit,omitempty" cborgen:"swapCommit,omitempty"`
2626+ // validate: 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.
2727+ Validate *bool `json:"validate,omitempty" cborgen:"validate,omitempty"`
2828+}
2929+3030+// RepoCreateRecord_Output is the output of a com.atproto.repo.createRecord call.
3131+type RepoCreateRecord_Output struct {
3232+ Cid string `json:"cid" cborgen:"cid"`
3333+ Commit *RepoDefs_CommitMeta `json:"commit,omitempty" cborgen:"commit,omitempty"`
3434+ Uri string `json:"uri" cborgen:"uri"`
3535+ ValidationStatus *string `json:"validationStatus,omitempty" cborgen:"validationStatus,omitempty"`
3636+}
3737+3838+// RepoCreateRecord calls the XRPC method "com.atproto.repo.createRecord".
3939+func RepoCreateRecord(ctx context.Context, c *xrpc.Client, input *RepoCreateRecord_Input) (*RepoCreateRecord_Output, error) {
4040+ var out RepoCreateRecord_Output
4141+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.repo.createRecord", nil, input, &out); err != nil {
4242+ return nil, err
4343+ }
4444+4545+ return &out, nil
4646+}
+11
api/atproto/repodefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.defs
66+77+// RepoDefs_CommitMeta is a "commitMeta" in the com.atproto.repo.defs schema.
88+type RepoDefs_CommitMeta struct {
99+ Cid string `json:"cid" cborgen:"cid"`
1010+ Rev string `json:"rev" cborgen:"rev"`
1111+}
+40
api/atproto/repodeleteRecord.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.deleteRecord
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// RepoDeleteRecord_Input is the input argument to a com.atproto.repo.deleteRecord call.
1414+type RepoDeleteRecord_Input struct {
1515+ // collection: The NSID of the record collection.
1616+ Collection string `json:"collection" cborgen:"collection"`
1717+ // repo: The handle or DID of the repo (aka, current account).
1818+ Repo string `json:"repo" cborgen:"repo"`
1919+ // rkey: The Record Key.
2020+ Rkey string `json:"rkey" cborgen:"rkey"`
2121+ // swapCommit: Compare and swap with the previous commit by CID.
2222+ SwapCommit *string `json:"swapCommit,omitempty" cborgen:"swapCommit,omitempty"`
2323+ // swapRecord: Compare and swap with the previous record by CID.
2424+ SwapRecord *string `json:"swapRecord,omitempty" cborgen:"swapRecord,omitempty"`
2525+}
2626+2727+// RepoDeleteRecord_Output is the output of a com.atproto.repo.deleteRecord call.
2828+type RepoDeleteRecord_Output struct {
2929+ Commit *RepoDefs_CommitMeta `json:"commit,omitempty" cborgen:"commit,omitempty"`
3030+}
3131+3232+// RepoDeleteRecord calls the XRPC method "com.atproto.repo.deleteRecord".
3333+func RepoDeleteRecord(ctx context.Context, c *xrpc.Client, input *RepoDeleteRecord_Input) (*RepoDeleteRecord_Output, error) {
3434+ var out RepoDeleteRecord_Output
3535+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.repo.deleteRecord", nil, input, &out); err != nil {
3636+ return nil, err
3737+ }
3838+3939+ return &out, nil
4040+}
+39
api/atproto/repodescribeRepo.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.describeRepo
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// RepoDescribeRepo_Output is the output of a com.atproto.repo.describeRepo call.
1414+type RepoDescribeRepo_Output struct {
1515+ // collections: List of all the collections (NSIDs) for which this repo contains at least one record.
1616+ Collections []string `json:"collections" cborgen:"collections"`
1717+ Did string `json:"did" cborgen:"did"`
1818+ // didDoc: The complete DID document for this account.
1919+ DidDoc interface{} `json:"didDoc" cborgen:"didDoc"`
2020+ Handle string `json:"handle" cborgen:"handle"`
2121+ // handleIsCorrect: Indicates if handle is currently valid (resolves bi-directionally)
2222+ HandleIsCorrect bool `json:"handleIsCorrect" cborgen:"handleIsCorrect"`
2323+}
2424+2525+// RepoDescribeRepo calls the XRPC method "com.atproto.repo.describeRepo".
2626+//
2727+// repo: The handle or DID of the repo.
2828+func RepoDescribeRepo(ctx context.Context, c *xrpc.Client, repo string) (*RepoDescribeRepo_Output, error) {
2929+ var out RepoDescribeRepo_Output
3030+3131+ params := map[string]interface{}{
3232+ "repo": repo,
3333+ }
3434+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.repo.describeRepo", params, nil, &out); err != nil {
3535+ return nil, err
3636+ }
3737+3838+ return &out, nil
3939+}
+41
api/atproto/repogetRecord.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.getRecord
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/lex/util"
1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// RepoGetRecord_Output is the output of a com.atproto.repo.getRecord call.
1515+type RepoGetRecord_Output struct {
1616+ Cid *string `json:"cid,omitempty" cborgen:"cid,omitempty"`
1717+ Uri string `json:"uri" cborgen:"uri"`
1818+ Value *util.LexiconTypeDecoder `json:"value" cborgen:"value"`
1919+}
2020+2121+// RepoGetRecord calls the XRPC method "com.atproto.repo.getRecord".
2222+//
2323+// cid: The CID of the version of the record. If not specified, then return the most recent version.
2424+// collection: The NSID of the record collection.
2525+// repo: The handle or DID of the repo.
2626+// rkey: The Record Key.
2727+func RepoGetRecord(ctx context.Context, c *xrpc.Client, cid string, collection string, repo string, rkey string) (*RepoGetRecord_Output, error) {
2828+ var out RepoGetRecord_Output
2929+3030+ params := map[string]interface{}{
3131+ "cid": cid,
3232+ "collection": collection,
3333+ "repo": repo,
3434+ "rkey": rkey,
3535+ }
3636+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.repo.getRecord", params, nil, &out); err != nil {
3737+ return nil, err
3838+ }
3939+4040+ return &out, nil
4141+}
+21
api/atproto/repoimportRepo.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.importRepo
66+77+import (
88+ "context"
99+ "io"
1010+1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// RepoImportRepo calls the XRPC method "com.atproto.repo.importRepo".
1515+func RepoImportRepo(ctx context.Context, c *xrpc.Client, input io.Reader) error {
1616+ if err := c.Do(ctx, xrpc.Procedure, "application/vnd.ipld.car", "com.atproto.repo.importRepo", nil, input, nil); err != nil {
1717+ return err
1818+ }
1919+2020+ return nil
2121+}
+38
api/atproto/repolistMissingBlobs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.listMissingBlobs
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// RepoListMissingBlobs_Output is the output of a com.atproto.repo.listMissingBlobs call.
1414+type RepoListMissingBlobs_Output struct {
1515+ Blobs []*RepoListMissingBlobs_RecordBlob `json:"blobs" cborgen:"blobs"`
1616+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+}
1818+1919+// RepoListMissingBlobs_RecordBlob is a "recordBlob" in the com.atproto.repo.listMissingBlobs schema.
2020+type RepoListMissingBlobs_RecordBlob struct {
2121+ Cid string `json:"cid" cborgen:"cid"`
2222+ RecordUri string `json:"recordUri" cborgen:"recordUri"`
2323+}
2424+2525+// RepoListMissingBlobs calls the XRPC method "com.atproto.repo.listMissingBlobs".
2626+func RepoListMissingBlobs(ctx context.Context, c *xrpc.Client, cursor string, limit int64) (*RepoListMissingBlobs_Output, error) {
2727+ var out RepoListMissingBlobs_Output
2828+2929+ params := map[string]interface{}{
3030+ "cursor": cursor,
3131+ "limit": limit,
3232+ }
3333+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.repo.listMissingBlobs", params, nil, &out); err != nil {
3434+ return nil, err
3535+ }
3636+3737+ return &out, nil
3838+}
+48
api/atproto/repolistRecords.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.listRecords
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/lex/util"
1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// RepoListRecords_Output is the output of a com.atproto.repo.listRecords call.
1515+type RepoListRecords_Output struct {
1616+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+ Records []*RepoListRecords_Record `json:"records" cborgen:"records"`
1818+}
1919+2020+// RepoListRecords_Record is a "record" in the com.atproto.repo.listRecords schema.
2121+type RepoListRecords_Record struct {
2222+ Cid string `json:"cid" cborgen:"cid"`
2323+ Uri string `json:"uri" cborgen:"uri"`
2424+ Value *util.LexiconTypeDecoder `json:"value" cborgen:"value"`
2525+}
2626+2727+// RepoListRecords calls the XRPC method "com.atproto.repo.listRecords".
2828+//
2929+// collection: The NSID of the record type.
3030+// limit: The number of records to return.
3131+// repo: The handle or DID of the repo.
3232+// reverse: Flag to reverse the order of the returned records.
3333+func RepoListRecords(ctx context.Context, c *xrpc.Client, collection string, cursor string, limit int64, repo string, reverse bool) (*RepoListRecords_Output, error) {
3434+ var out RepoListRecords_Output
3535+3636+ params := map[string]interface{}{
3737+ "collection": collection,
3838+ "cursor": cursor,
3939+ "limit": limit,
4040+ "repo": repo,
4141+ "reverse": reverse,
4242+ }
4343+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.repo.listRecords", params, nil, &out); err != nil {
4444+ return nil, err
4545+ }
4646+4747+ return &out, nil
4848+}
+48
api/atproto/repoputRecord.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.putRecord
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/lex/util"
1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// RepoPutRecord_Input is the input argument to a com.atproto.repo.putRecord call.
1515+type RepoPutRecord_Input struct {
1616+ // collection: The NSID of the record collection.
1717+ Collection string `json:"collection" cborgen:"collection"`
1818+ // record: The record to write.
1919+ Record *util.LexiconTypeDecoder `json:"record" cborgen:"record"`
2020+ // repo: The handle or DID of the repo (aka, current account).
2121+ Repo string `json:"repo" cborgen:"repo"`
2222+ // rkey: The Record Key.
2323+ Rkey string `json:"rkey" cborgen:"rkey"`
2424+ // swapCommit: Compare and swap with the previous commit by CID.
2525+ SwapCommit *string `json:"swapCommit,omitempty" cborgen:"swapCommit,omitempty"`
2626+ // swapRecord: Compare and swap with the previous record by CID. WARNING: nullable and optional field; may cause problems with golang implementation
2727+ SwapRecord *string `json:"swapRecord" cborgen:"swapRecord"`
2828+ // validate: 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.
2929+ Validate *bool `json:"validate,omitempty" cborgen:"validate,omitempty"`
3030+}
3131+3232+// RepoPutRecord_Output is the output of a com.atproto.repo.putRecord call.
3333+type RepoPutRecord_Output struct {
3434+ Cid string `json:"cid" cborgen:"cid"`
3535+ Commit *RepoDefs_CommitMeta `json:"commit,omitempty" cborgen:"commit,omitempty"`
3636+ Uri string `json:"uri" cborgen:"uri"`
3737+ ValidationStatus *string `json:"validationStatus,omitempty" cborgen:"validationStatus,omitempty"`
3838+}
3939+4040+// RepoPutRecord calls the XRPC method "com.atproto.repo.putRecord".
4141+func RepoPutRecord(ctx context.Context, c *xrpc.Client, input *RepoPutRecord_Input) (*RepoPutRecord_Output, error) {
4242+ var out RepoPutRecord_Output
4343+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.repo.putRecord", nil, input, &out); err != nil {
4444+ return nil, err
4545+ }
4646+4747+ return &out, nil
4848+}
+19
api/atproto/repostrongRef.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.strongRef
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("com.atproto.repo.strongRef#main", &RepoStrongRef{})
1313+} // RepoStrongRef is a "main" in the com.atproto.repo.strongRef schema.
1414+// RECORDTYPE: RepoStrongRef
1515+type RepoStrongRef struct {
1616+ LexiconTypeID string `json:"$type,const=com.atproto.repo.strongRef,omitempty" cborgen:"$type,const=com.atproto.repo.strongRef,omitempty"`
1717+ Cid string `json:"cid" cborgen:"cid"`
1818+ Uri string `json:"uri" cborgen:"uri"`
1919+}
+28
api/atproto/repouploadBlob.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.repo.uploadBlob
66+77+import (
88+ "context"
99+ "io"
1010+1111+ "github.com/bluesky-social/indigo/lex/util"
1212+ "github.com/bluesky-social/indigo/xrpc"
1313+)
1414+1515+// RepoUploadBlob_Output is the output of a com.atproto.repo.uploadBlob call.
1616+type RepoUploadBlob_Output struct {
1717+ Blob *util.LexBlob `json:"blob" cborgen:"blob"`
1818+}
1919+2020+// RepoUploadBlob calls the XRPC method "com.atproto.repo.uploadBlob".
2121+func RepoUploadBlob(ctx context.Context, c *xrpc.Client, input io.Reader) (*RepoUploadBlob_Output, error) {
2222+ var out RepoUploadBlob_Output
2323+ if err := c.Do(ctx, xrpc.Procedure, "*/*", "com.atproto.repo.uploadBlob", nil, input, &out); err != nil {
2424+ return nil, err
2525+ }
2626+2727+ return &out, nil
2828+}
+20
api/atproto/serveractivateAccount.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.activateAccount
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerActivateAccount calls the XRPC method "com.atproto.server.activateAccount".
1414+func ServerActivateAccount(ctx context.Context, c *xrpc.Client) error {
1515+ if err := c.Do(ctx, xrpc.Procedure, "", "com.atproto.server.activateAccount", nil, nil, nil); err != nil {
1616+ return err
1717+ }
1818+1919+ return nil
2020+}
+34
api/atproto/servercheckAccountStatus.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.checkAccountStatus
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerCheckAccountStatus_Output is the output of a com.atproto.server.checkAccountStatus call.
1414+type ServerCheckAccountStatus_Output struct {
1515+ Activated bool `json:"activated" cborgen:"activated"`
1616+ ExpectedBlobs int64 `json:"expectedBlobs" cborgen:"expectedBlobs"`
1717+ ImportedBlobs int64 `json:"importedBlobs" cborgen:"importedBlobs"`
1818+ IndexedRecords int64 `json:"indexedRecords" cborgen:"indexedRecords"`
1919+ PrivateStateValues int64 `json:"privateStateValues" cborgen:"privateStateValues"`
2020+ RepoBlocks int64 `json:"repoBlocks" cborgen:"repoBlocks"`
2121+ RepoCommit string `json:"repoCommit" cborgen:"repoCommit"`
2222+ RepoRev string `json:"repoRev" cborgen:"repoRev"`
2323+ ValidDid bool `json:"validDid" cborgen:"validDid"`
2424+}
2525+2626+// ServerCheckAccountStatus calls the XRPC method "com.atproto.server.checkAccountStatus".
2727+func ServerCheckAccountStatus(ctx context.Context, c *xrpc.Client) (*ServerCheckAccountStatus_Output, error) {
2828+ var out ServerCheckAccountStatus_Output
2929+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.server.checkAccountStatus", nil, nil, &out); err != nil {
3030+ return nil, err
3131+ }
3232+3333+ return &out, nil
3434+}
+26
api/atproto/serverconfirmEmail.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.confirmEmail
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerConfirmEmail_Input is the input argument to a com.atproto.server.confirmEmail call.
1414+type ServerConfirmEmail_Input struct {
1515+ Email string `json:"email" cborgen:"email"`
1616+ Token string `json:"token" cborgen:"token"`
1717+}
1818+1919+// ServerConfirmEmail calls the XRPC method "com.atproto.server.confirmEmail".
2020+func ServerConfirmEmail(ctx context.Context, c *xrpc.Client, input *ServerConfirmEmail_Input) error {
2121+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.confirmEmail", nil, input, nil); err != nil {
2222+ return err
2323+ }
2424+2525+ return nil
2626+}
+52
api/atproto/servercreateAccount.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.createAccount
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerCreateAccount_Input is the input argument to a com.atproto.server.createAccount call.
1414+type ServerCreateAccount_Input struct {
1515+ // did: Pre-existing atproto DID, being imported to a new account.
1616+ Did *string `json:"did,omitempty" cborgen:"did,omitempty"`
1717+ Email *string `json:"email,omitempty" cborgen:"email,omitempty"`
1818+ // handle: Requested handle for the account.
1919+ Handle string `json:"handle" cborgen:"handle"`
2020+ InviteCode *string `json:"inviteCode,omitempty" cborgen:"inviteCode,omitempty"`
2121+ // password: Initial account password. May need to meet instance-specific password strength requirements.
2222+ Password *string `json:"password,omitempty" cborgen:"password,omitempty"`
2323+ // plcOp: 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.
2424+ PlcOp *interface{} `json:"plcOp,omitempty" cborgen:"plcOp,omitempty"`
2525+ // recoveryKey: DID PLC rotation key (aka, recovery key) to be included in PLC creation operation.
2626+ RecoveryKey *string `json:"recoveryKey,omitempty" cborgen:"recoveryKey,omitempty"`
2727+ VerificationCode *string `json:"verificationCode,omitempty" cborgen:"verificationCode,omitempty"`
2828+ VerificationPhone *string `json:"verificationPhone,omitempty" cborgen:"verificationPhone,omitempty"`
2929+}
3030+3131+// ServerCreateAccount_Output is the output of a com.atproto.server.createAccount call.
3232+//
3333+// Account login session returned on successful account creation.
3434+type ServerCreateAccount_Output struct {
3535+ AccessJwt string `json:"accessJwt" cborgen:"accessJwt"`
3636+ // did: The DID of the new account.
3737+ Did string `json:"did" cborgen:"did"`
3838+ // didDoc: Complete DID document.
3939+ DidDoc *interface{} `json:"didDoc,omitempty" cborgen:"didDoc,omitempty"`
4040+ Handle string `json:"handle" cborgen:"handle"`
4141+ RefreshJwt string `json:"refreshJwt" cborgen:"refreshJwt"`
4242+}
4343+4444+// ServerCreateAccount calls the XRPC method "com.atproto.server.createAccount".
4545+func ServerCreateAccount(ctx context.Context, c *xrpc.Client, input *ServerCreateAccount_Input) (*ServerCreateAccount_Output, error) {
4646+ var out ServerCreateAccount_Output
4747+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.createAccount", nil, input, &out); err != nil {
4848+ return nil, err
4949+ }
5050+5151+ return &out, nil
5252+}
+37
api/atproto/servercreateAppPassword.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.createAppPassword
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerCreateAppPassword_AppPassword is a "appPassword" in the com.atproto.server.createAppPassword schema.
1414+type ServerCreateAppPassword_AppPassword struct {
1515+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1616+ Name string `json:"name" cborgen:"name"`
1717+ Password string `json:"password" cborgen:"password"`
1818+ Privileged *bool `json:"privileged,omitempty" cborgen:"privileged,omitempty"`
1919+}
2020+2121+// ServerCreateAppPassword_Input is the input argument to a com.atproto.server.createAppPassword call.
2222+type ServerCreateAppPassword_Input struct {
2323+ // name: A short name for the App Password, to help distinguish them.
2424+ Name string `json:"name" cborgen:"name"`
2525+ // privileged: If an app password has 'privileged' access to possibly sensitive account state. Meant for use with trusted clients.
2626+ Privileged *bool `json:"privileged,omitempty" cborgen:"privileged,omitempty"`
2727+}
2828+2929+// ServerCreateAppPassword calls the XRPC method "com.atproto.server.createAppPassword".
3030+func ServerCreateAppPassword(ctx context.Context, c *xrpc.Client, input *ServerCreateAppPassword_Input) (*ServerCreateAppPassword_AppPassword, error) {
3131+ var out ServerCreateAppPassword_AppPassword
3232+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.createAppPassword", nil, input, &out); err != nil {
3333+ return nil, err
3434+ }
3535+3636+ return &out, nil
3737+}
+32
api/atproto/servercreateInviteCode.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.createInviteCode
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerCreateInviteCode_Input is the input argument to a com.atproto.server.createInviteCode call.
1414+type ServerCreateInviteCode_Input struct {
1515+ ForAccount *string `json:"forAccount,omitempty" cborgen:"forAccount,omitempty"`
1616+ UseCount int64 `json:"useCount" cborgen:"useCount"`
1717+}
1818+1919+// ServerCreateInviteCode_Output is the output of a com.atproto.server.createInviteCode call.
2020+type ServerCreateInviteCode_Output struct {
2121+ Code string `json:"code" cborgen:"code"`
2222+}
2323+2424+// ServerCreateInviteCode calls the XRPC method "com.atproto.server.createInviteCode".
2525+func ServerCreateInviteCode(ctx context.Context, c *xrpc.Client, input *ServerCreateInviteCode_Input) (*ServerCreateInviteCode_Output, error) {
2626+ var out ServerCreateInviteCode_Output
2727+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.createInviteCode", nil, input, &out); err != nil {
2828+ return nil, err
2929+ }
3030+3131+ return &out, nil
3232+}
+39
api/atproto/servercreateInviteCodes.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.createInviteCodes
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerCreateInviteCodes_AccountCodes is a "accountCodes" in the com.atproto.server.createInviteCodes schema.
1414+type ServerCreateInviteCodes_AccountCodes struct {
1515+ Account string `json:"account" cborgen:"account"`
1616+ Codes []string `json:"codes" cborgen:"codes"`
1717+}
1818+1919+// ServerCreateInviteCodes_Input is the input argument to a com.atproto.server.createInviteCodes call.
2020+type ServerCreateInviteCodes_Input struct {
2121+ CodeCount int64 `json:"codeCount" cborgen:"codeCount"`
2222+ ForAccounts []string `json:"forAccounts,omitempty" cborgen:"forAccounts,omitempty"`
2323+ UseCount int64 `json:"useCount" cborgen:"useCount"`
2424+}
2525+2626+// ServerCreateInviteCodes_Output is the output of a com.atproto.server.createInviteCodes call.
2727+type ServerCreateInviteCodes_Output struct {
2828+ Codes []*ServerCreateInviteCodes_AccountCodes `json:"codes" cborgen:"codes"`
2929+}
3030+3131+// ServerCreateInviteCodes calls the XRPC method "com.atproto.server.createInviteCodes".
3232+func ServerCreateInviteCodes(ctx context.Context, c *xrpc.Client, input *ServerCreateInviteCodes_Input) (*ServerCreateInviteCodes_Output, error) {
3333+ var out ServerCreateInviteCodes_Output
3434+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.createInviteCodes", nil, input, &out); err != nil {
3535+ return nil, err
3636+ }
3737+3838+ return &out, nil
3939+}
+46
api/atproto/servercreateSession.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.createSession
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerCreateSession_Input is the input argument to a com.atproto.server.createSession call.
1414+type ServerCreateSession_Input struct {
1515+ // allowTakendown: When true, instead of throwing error for takendown accounts, a valid response with a narrow scoped token will be returned
1616+ AllowTakendown *bool `json:"allowTakendown,omitempty" cborgen:"allowTakendown,omitempty"`
1717+ AuthFactorToken *string `json:"authFactorToken,omitempty" cborgen:"authFactorToken,omitempty"`
1818+ // identifier: Handle or other identifier supported by the server for the authenticating user.
1919+ Identifier string `json:"identifier" cborgen:"identifier"`
2020+ Password string `json:"password" cborgen:"password"`
2121+}
2222+2323+// ServerCreateSession_Output is the output of a com.atproto.server.createSession call.
2424+type ServerCreateSession_Output struct {
2525+ AccessJwt string `json:"accessJwt" cborgen:"accessJwt"`
2626+ Active *bool `json:"active,omitempty" cborgen:"active,omitempty"`
2727+ Did string `json:"did" cborgen:"did"`
2828+ DidDoc *interface{} `json:"didDoc,omitempty" cborgen:"didDoc,omitempty"`
2929+ Email *string `json:"email,omitempty" cborgen:"email,omitempty"`
3030+ EmailAuthFactor *bool `json:"emailAuthFactor,omitempty" cborgen:"emailAuthFactor,omitempty"`
3131+ EmailConfirmed *bool `json:"emailConfirmed,omitempty" cborgen:"emailConfirmed,omitempty"`
3232+ Handle string `json:"handle" cborgen:"handle"`
3333+ RefreshJwt string `json:"refreshJwt" cborgen:"refreshJwt"`
3434+ // status: 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.
3535+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
3636+}
3737+3838+// ServerCreateSession calls the XRPC method "com.atproto.server.createSession".
3939+func ServerCreateSession(ctx context.Context, c *xrpc.Client, input *ServerCreateSession_Input) (*ServerCreateSession_Output, error) {
4040+ var out ServerCreateSession_Output
4141+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.createSession", nil, input, &out); err != nil {
4242+ return nil, err
4343+ }
4444+4545+ return &out, nil
4646+}
+26
api/atproto/serverdeactivateAccount.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.deactivateAccount
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerDeactivateAccount_Input is the input argument to a com.atproto.server.deactivateAccount call.
1414+type ServerDeactivateAccount_Input struct {
1515+ // deleteAfter: A recommendation to server as to how long they should hold onto the deactivated account before deleting.
1616+ DeleteAfter *string `json:"deleteAfter,omitempty" cborgen:"deleteAfter,omitempty"`
1717+}
1818+1919+// ServerDeactivateAccount calls the XRPC method "com.atproto.server.deactivateAccount".
2020+func ServerDeactivateAccount(ctx context.Context, c *xrpc.Client, input *ServerDeactivateAccount_Input) error {
2121+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.deactivateAccount", nil, input, nil); err != nil {
2222+ return err
2323+ }
2424+2525+ return nil
2626+}
+22
api/atproto/serverdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.defs
66+77+// ServerDefs_InviteCode is a "inviteCode" in the com.atproto.server.defs schema.
88+type ServerDefs_InviteCode struct {
99+ Available int64 `json:"available" cborgen:"available"`
1010+ Code string `json:"code" cborgen:"code"`
1111+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1212+ CreatedBy string `json:"createdBy" cborgen:"createdBy"`
1313+ Disabled bool `json:"disabled" cborgen:"disabled"`
1414+ ForAccount string `json:"forAccount" cborgen:"forAccount"`
1515+ Uses []*ServerDefs_InviteCodeUse `json:"uses" cborgen:"uses"`
1616+}
1717+1818+// ServerDefs_InviteCodeUse is a "inviteCodeUse" in the com.atproto.server.defs schema.
1919+type ServerDefs_InviteCodeUse struct {
2020+ UsedAt string `json:"usedAt" cborgen:"usedAt"`
2121+ UsedBy string `json:"usedBy" cborgen:"usedBy"`
2222+}
+27
api/atproto/serverdeleteAccount.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.deleteAccount
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerDeleteAccount_Input is the input argument to a com.atproto.server.deleteAccount call.
1414+type ServerDeleteAccount_Input struct {
1515+ Did string `json:"did" cborgen:"did"`
1616+ Password string `json:"password" cborgen:"password"`
1717+ Token string `json:"token" cborgen:"token"`
1818+}
1919+2020+// ServerDeleteAccount calls the XRPC method "com.atproto.server.deleteAccount".
2121+func ServerDeleteAccount(ctx context.Context, c *xrpc.Client, input *ServerDeleteAccount_Input) error {
2222+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.deleteAccount", nil, input, nil); err != nil {
2323+ return err
2424+ }
2525+2626+ return nil
2727+}
+20
api/atproto/serverdeleteSession.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.deleteSession
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerDeleteSession calls the XRPC method "com.atproto.server.deleteSession".
1414+func ServerDeleteSession(ctx context.Context, c *xrpc.Client) error {
1515+ if err := c.Do(ctx, xrpc.Procedure, "", "com.atproto.server.deleteSession", nil, nil, nil); err != nil {
1616+ return err
1717+ }
1818+1919+ return nil
2020+}
+47
api/atproto/serverdescribeServer.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.describeServer
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerDescribeServer_Contact is a "contact" in the com.atproto.server.describeServer schema.
1414+type ServerDescribeServer_Contact struct {
1515+ Email *string `json:"email,omitempty" cborgen:"email,omitempty"`
1616+}
1717+1818+// ServerDescribeServer_Links is a "links" in the com.atproto.server.describeServer schema.
1919+type ServerDescribeServer_Links struct {
2020+ PrivacyPolicy *string `json:"privacyPolicy,omitempty" cborgen:"privacyPolicy,omitempty"`
2121+ TermsOfService *string `json:"termsOfService,omitempty" cborgen:"termsOfService,omitempty"`
2222+}
2323+2424+// ServerDescribeServer_Output is the output of a com.atproto.server.describeServer call.
2525+type ServerDescribeServer_Output struct {
2626+ // availableUserDomains: List of domain suffixes that can be used in account handles.
2727+ AvailableUserDomains []string `json:"availableUserDomains" cborgen:"availableUserDomains"`
2828+ // contact: Contact information
2929+ Contact *ServerDescribeServer_Contact `json:"contact,omitempty" cborgen:"contact,omitempty"`
3030+ Did string `json:"did" cborgen:"did"`
3131+ // inviteCodeRequired: If true, an invite code must be supplied to create an account on this instance.
3232+ InviteCodeRequired *bool `json:"inviteCodeRequired,omitempty" cborgen:"inviteCodeRequired,omitempty"`
3333+ // links: URLs of service policy documents.
3434+ Links *ServerDescribeServer_Links `json:"links,omitempty" cborgen:"links,omitempty"`
3535+ // phoneVerificationRequired: If true, a phone verification token must be supplied to create an account on this instance.
3636+ PhoneVerificationRequired *bool `json:"phoneVerificationRequired,omitempty" cborgen:"phoneVerificationRequired,omitempty"`
3737+}
3838+3939+// ServerDescribeServer calls the XRPC method "com.atproto.server.describeServer".
4040+func ServerDescribeServer(ctx context.Context, c *xrpc.Client) (*ServerDescribeServer_Output, error) {
4141+ var out ServerDescribeServer_Output
4242+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.server.describeServer", nil, nil, &out); err != nil {
4343+ return nil, err
4444+ }
4545+4646+ return &out, nil
4747+}
+33
api/atproto/servergetAccountInviteCodes.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.getAccountInviteCodes
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerGetAccountInviteCodes_Output is the output of a com.atproto.server.getAccountInviteCodes call.
1414+type ServerGetAccountInviteCodes_Output struct {
1515+ Codes []*ServerDefs_InviteCode `json:"codes" cborgen:"codes"`
1616+}
1717+1818+// ServerGetAccountInviteCodes calls the XRPC method "com.atproto.server.getAccountInviteCodes".
1919+//
2020+// createAvailable: Controls whether any new 'earned' but not 'created' invites should be created.
2121+func ServerGetAccountInviteCodes(ctx context.Context, c *xrpc.Client, createAvailable bool, includeUsed bool) (*ServerGetAccountInviteCodes_Output, error) {
2222+ var out ServerGetAccountInviteCodes_Output
2323+2424+ params := map[string]interface{}{
2525+ "createAvailable": createAvailable,
2626+ "includeUsed": includeUsed,
2727+ }
2828+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.server.getAccountInviteCodes", params, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+36
api/atproto/servergetServiceAuth.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.getServiceAuth
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerGetServiceAuth_Output is the output of a com.atproto.server.getServiceAuth call.
1414+type ServerGetServiceAuth_Output struct {
1515+ Token string `json:"token" cborgen:"token"`
1616+}
1717+1818+// ServerGetServiceAuth calls the XRPC method "com.atproto.server.getServiceAuth".
1919+//
2020+// aud: The DID of the service that the token will be used to authenticate with
2121+// exp: 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.
2222+// lxm: Lexicon (XRPC) method to bind the requested token to
2323+func ServerGetServiceAuth(ctx context.Context, c *xrpc.Client, aud string, exp int64, lxm string) (*ServerGetServiceAuth_Output, error) {
2424+ var out ServerGetServiceAuth_Output
2525+2626+ params := map[string]interface{}{
2727+ "aud": aud,
2828+ "exp": exp,
2929+ "lxm": lxm,
3030+ }
3131+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.server.getServiceAuth", params, nil, &out); err != nil {
3232+ return nil, err
3333+ }
3434+3535+ return &out, nil
3636+}
+34
api/atproto/servergetSession.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.getSession
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerGetSession_Output is the output of a com.atproto.server.getSession call.
1414+type ServerGetSession_Output struct {
1515+ Active *bool `json:"active,omitempty" cborgen:"active,omitempty"`
1616+ Did string `json:"did" cborgen:"did"`
1717+ DidDoc *interface{} `json:"didDoc,omitempty" cborgen:"didDoc,omitempty"`
1818+ Email *string `json:"email,omitempty" cborgen:"email,omitempty"`
1919+ EmailAuthFactor *bool `json:"emailAuthFactor,omitempty" cborgen:"emailAuthFactor,omitempty"`
2020+ EmailConfirmed *bool `json:"emailConfirmed,omitempty" cborgen:"emailConfirmed,omitempty"`
2121+ Handle string `json:"handle" cborgen:"handle"`
2222+ // status: 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.
2323+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
2424+}
2525+2626+// ServerGetSession calls the XRPC method "com.atproto.server.getSession".
2727+func ServerGetSession(ctx context.Context, c *xrpc.Client) (*ServerGetSession_Output, error) {
2828+ var out ServerGetSession_Output
2929+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.server.getSession", nil, nil, &out); err != nil {
3030+ return nil, err
3131+ }
3232+3333+ return &out, nil
3434+}
+33
api/atproto/serverlistAppPasswords.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.listAppPasswords
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerListAppPasswords_AppPassword is a "appPassword" in the com.atproto.server.listAppPasswords schema.
1414+type ServerListAppPasswords_AppPassword struct {
1515+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1616+ Name string `json:"name" cborgen:"name"`
1717+ Privileged *bool `json:"privileged,omitempty" cborgen:"privileged,omitempty"`
1818+}
1919+2020+// ServerListAppPasswords_Output is the output of a com.atproto.server.listAppPasswords call.
2121+type ServerListAppPasswords_Output struct {
2222+ Passwords []*ServerListAppPasswords_AppPassword `json:"passwords" cborgen:"passwords"`
2323+}
2424+2525+// ServerListAppPasswords calls the XRPC method "com.atproto.server.listAppPasswords".
2626+func ServerListAppPasswords(ctx context.Context, c *xrpc.Client) (*ServerListAppPasswords_Output, error) {
2727+ var out ServerListAppPasswords_Output
2828+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.server.listAppPasswords", nil, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+33
api/atproto/serverrefreshSession.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.refreshSession
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerRefreshSession_Output is the output of a com.atproto.server.refreshSession call.
1414+type ServerRefreshSession_Output struct {
1515+ AccessJwt string `json:"accessJwt" cborgen:"accessJwt"`
1616+ Active *bool `json:"active,omitempty" cborgen:"active,omitempty"`
1717+ Did string `json:"did" cborgen:"did"`
1818+ DidDoc *interface{} `json:"didDoc,omitempty" cborgen:"didDoc,omitempty"`
1919+ Handle string `json:"handle" cborgen:"handle"`
2020+ RefreshJwt string `json:"refreshJwt" cborgen:"refreshJwt"`
2121+ // status: Hosting status of the account. If not specified, then assume 'active'.
2222+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
2323+}
2424+2525+// ServerRefreshSession calls the XRPC method "com.atproto.server.refreshSession".
2626+func ServerRefreshSession(ctx context.Context, c *xrpc.Client) (*ServerRefreshSession_Output, error) {
2727+ var out ServerRefreshSession_Output
2828+ if err := c.Do(ctx, xrpc.Procedure, "", "com.atproto.server.refreshSession", nil, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+20
api/atproto/serverrequestAccountDelete.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.requestAccountDelete
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerRequestAccountDelete calls the XRPC method "com.atproto.server.requestAccountDelete".
1414+func ServerRequestAccountDelete(ctx context.Context, c *xrpc.Client) error {
1515+ if err := c.Do(ctx, xrpc.Procedure, "", "com.atproto.server.requestAccountDelete", nil, nil, nil); err != nil {
1616+ return err
1717+ }
1818+1919+ return nil
2020+}
+20
api/atproto/serverrequestEmailConfirmation.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.requestEmailConfirmation
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerRequestEmailConfirmation calls the XRPC method "com.atproto.server.requestEmailConfirmation".
1414+func ServerRequestEmailConfirmation(ctx context.Context, c *xrpc.Client) error {
1515+ if err := c.Do(ctx, xrpc.Procedure, "", "com.atproto.server.requestEmailConfirmation", nil, nil, nil); err != nil {
1616+ return err
1717+ }
1818+1919+ return nil
2020+}
+26
api/atproto/serverrequestEmailUpdate.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.requestEmailUpdate
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerRequestEmailUpdate_Output is the output of a com.atproto.server.requestEmailUpdate call.
1414+type ServerRequestEmailUpdate_Output struct {
1515+ TokenRequired bool `json:"tokenRequired" cborgen:"tokenRequired"`
1616+}
1717+1818+// ServerRequestEmailUpdate calls the XRPC method "com.atproto.server.requestEmailUpdate".
1919+func ServerRequestEmailUpdate(ctx context.Context, c *xrpc.Client) (*ServerRequestEmailUpdate_Output, error) {
2020+ var out ServerRequestEmailUpdate_Output
2121+ if err := c.Do(ctx, xrpc.Procedure, "", "com.atproto.server.requestEmailUpdate", nil, nil, &out); err != nil {
2222+ return nil, err
2323+ }
2424+2525+ return &out, nil
2626+}
+25
api/atproto/serverrequestPasswordReset.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.requestPasswordReset
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerRequestPasswordReset_Input is the input argument to a com.atproto.server.requestPasswordReset call.
1414+type ServerRequestPasswordReset_Input struct {
1515+ Email string `json:"email" cborgen:"email"`
1616+}
1717+1818+// ServerRequestPasswordReset calls the XRPC method "com.atproto.server.requestPasswordReset".
1919+func ServerRequestPasswordReset(ctx context.Context, c *xrpc.Client, input *ServerRequestPasswordReset_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.requestPasswordReset", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+33
api/atproto/serverreserveSigningKey.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.reserveSigningKey
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerReserveSigningKey_Input is the input argument to a com.atproto.server.reserveSigningKey call.
1414+type ServerReserveSigningKey_Input struct {
1515+ // did: The DID to reserve a key for.
1616+ Did *string `json:"did,omitempty" cborgen:"did,omitempty"`
1717+}
1818+1919+// ServerReserveSigningKey_Output is the output of a com.atproto.server.reserveSigningKey call.
2020+type ServerReserveSigningKey_Output struct {
2121+ // signingKey: The public key for the reserved signing key, in did:key serialization.
2222+ SigningKey string `json:"signingKey" cborgen:"signingKey"`
2323+}
2424+2525+// ServerReserveSigningKey calls the XRPC method "com.atproto.server.reserveSigningKey".
2626+func ServerReserveSigningKey(ctx context.Context, c *xrpc.Client, input *ServerReserveSigningKey_Input) (*ServerReserveSigningKey_Output, error) {
2727+ var out ServerReserveSigningKey_Output
2828+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.reserveSigningKey", nil, input, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+26
api/atproto/serverresetPassword.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.resetPassword
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerResetPassword_Input is the input argument to a com.atproto.server.resetPassword call.
1414+type ServerResetPassword_Input struct {
1515+ Password string `json:"password" cborgen:"password"`
1616+ Token string `json:"token" cborgen:"token"`
1717+}
1818+1919+// ServerResetPassword calls the XRPC method "com.atproto.server.resetPassword".
2020+func ServerResetPassword(ctx context.Context, c *xrpc.Client, input *ServerResetPassword_Input) error {
2121+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.resetPassword", nil, input, nil); err != nil {
2222+ return err
2323+ }
2424+2525+ return nil
2626+}
+25
api/atproto/serverrevokeAppPassword.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.revokeAppPassword
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerRevokeAppPassword_Input is the input argument to a com.atproto.server.revokeAppPassword call.
1414+type ServerRevokeAppPassword_Input struct {
1515+ Name string `json:"name" cborgen:"name"`
1616+}
1717+1818+// ServerRevokeAppPassword calls the XRPC method "com.atproto.server.revokeAppPassword".
1919+func ServerRevokeAppPassword(ctx context.Context, c *xrpc.Client, input *ServerRevokeAppPassword_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.revokeAppPassword", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+28
api/atproto/serverupdateEmail.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.server.updateEmail
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerUpdateEmail_Input is the input argument to a com.atproto.server.updateEmail call.
1414+type ServerUpdateEmail_Input struct {
1515+ Email string `json:"email" cborgen:"email"`
1616+ EmailAuthFactor *bool `json:"emailAuthFactor,omitempty" cborgen:"emailAuthFactor,omitempty"`
1717+ // token: Requires a token from com.atproto.sever.requestEmailUpdate if the account's email has been confirmed.
1818+ Token *string `json:"token,omitempty" cborgen:"token,omitempty"`
1919+}
2020+2121+// ServerUpdateEmail calls the XRPC method "com.atproto.server.updateEmail".
2222+func ServerUpdateEmail(ctx context.Context, c *xrpc.Client, input *ServerUpdateEmail_Input) error {
2323+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.server.updateEmail", nil, input, nil); err != nil {
2424+ return err
2525+ }
2626+2727+ return nil
2828+}
+5
api/atproto/syncdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.defs
+30
api/atproto/syncgetBlob.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.getBlob
66+77+import (
88+ "bytes"
99+ "context"
1010+1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// SyncGetBlob calls the XRPC method "com.atproto.sync.getBlob".
1515+//
1616+// cid: The CID of the blob to fetch
1717+// did: The DID of the account.
1818+func SyncGetBlob(ctx context.Context, c *xrpc.Client, cid string, did string) ([]byte, error) {
1919+ buf := new(bytes.Buffer)
2020+2121+ params := map[string]interface{}{
2222+ "cid": cid,
2323+ "did": did,
2424+ }
2525+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.getBlob", params, nil, buf); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return buf.Bytes(), nil
3030+}
+29
api/atproto/syncgetBlocks.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.getBlocks
66+77+import (
88+ "bytes"
99+ "context"
1010+1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// SyncGetBlocks calls the XRPC method "com.atproto.sync.getBlocks".
1515+//
1616+// did: The DID of the repo.
1717+func SyncGetBlocks(ctx context.Context, c *xrpc.Client, cids []string, did string) ([]byte, error) {
1818+ buf := new(bytes.Buffer)
1919+2020+ params := map[string]interface{}{
2121+ "cids": cids,
2222+ "did": did,
2323+ }
2424+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.getBlocks", params, nil, buf); err != nil {
2525+ return nil, err
2626+ }
2727+2828+ return buf.Bytes(), nil
2929+}
+28
api/atproto/syncgetCheckout.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.getCheckout
66+77+import (
88+ "bytes"
99+ "context"
1010+1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// SyncGetCheckout calls the XRPC method "com.atproto.sync.getCheckout".
1515+//
1616+// did: The DID of the repo.
1717+func SyncGetCheckout(ctx context.Context, c *xrpc.Client, did string) ([]byte, error) {
1818+ buf := new(bytes.Buffer)
1919+2020+ params := map[string]interface{}{
2121+ "did": did,
2222+ }
2323+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.getCheckout", params, nil, buf); err != nil {
2424+ return nil, err
2525+ }
2626+2727+ return buf.Bytes(), nil
2828+}
+32
api/atproto/syncgetHead.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.getHead
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncGetHead_Output is the output of a com.atproto.sync.getHead call.
1414+type SyncGetHead_Output struct {
1515+ Root string `json:"root" cborgen:"root"`
1616+}
1717+1818+// SyncGetHead calls the XRPC method "com.atproto.sync.getHead".
1919+//
2020+// did: The DID of the repo.
2121+func SyncGetHead(ctx context.Context, c *xrpc.Client, did string) (*SyncGetHead_Output, error) {
2222+ var out SyncGetHead_Output
2323+2424+ params := map[string]interface{}{
2525+ "did": did,
2626+ }
2727+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.getHead", params, nil, &out); err != nil {
2828+ return nil, err
2929+ }
3030+3131+ return &out, nil
3232+}
+37
api/atproto/syncgetHostStatus.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.getHostStatus
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncGetHostStatus_Output is the output of a com.atproto.sync.getHostStatus call.
1414+type SyncGetHostStatus_Output struct {
1515+ // accountCount: Number of accounts on the server which are associated with the upstream host. Note that the upstream may actually have more accounts.
1616+ AccountCount *int64 `json:"accountCount,omitempty" cborgen:"accountCount,omitempty"`
1717+ Hostname string `json:"hostname" cborgen:"hostname"`
1818+ // seq: Recent repo stream event sequence number. May be delayed from actual stream processing (eg, persisted cursor not in-memory cursor).
1919+ Seq *int64 `json:"seq,omitempty" cborgen:"seq,omitempty"`
2020+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
2121+}
2222+2323+// SyncGetHostStatus calls the XRPC method "com.atproto.sync.getHostStatus".
2424+//
2525+// hostname: Hostname of the host (eg, PDS or relay) being queried.
2626+func SyncGetHostStatus(ctx context.Context, c *xrpc.Client, hostname string) (*SyncGetHostStatus_Output, error) {
2727+ var out SyncGetHostStatus_Output
2828+2929+ params := map[string]interface{}{
3030+ "hostname": hostname,
3131+ }
3232+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.getHostStatus", params, nil, &out); err != nil {
3333+ return nil, err
3434+ }
3535+3636+ return &out, nil
3737+}
+33
api/atproto/syncgetLatestCommit.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.getLatestCommit
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncGetLatestCommit_Output is the output of a com.atproto.sync.getLatestCommit call.
1414+type SyncGetLatestCommit_Output struct {
1515+ Cid string `json:"cid" cborgen:"cid"`
1616+ Rev string `json:"rev" cborgen:"rev"`
1717+}
1818+1919+// SyncGetLatestCommit calls the XRPC method "com.atproto.sync.getLatestCommit".
2020+//
2121+// did: The DID of the repo.
2222+func SyncGetLatestCommit(ctx context.Context, c *xrpc.Client, did string) (*SyncGetLatestCommit_Output, error) {
2323+ var out SyncGetLatestCommit_Output
2424+2525+ params := map[string]interface{}{
2626+ "did": did,
2727+ }
2828+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.getLatestCommit", params, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+31
api/atproto/syncgetRecord.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.getRecord
66+77+import (
88+ "bytes"
99+ "context"
1010+1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// SyncGetRecord calls the XRPC method "com.atproto.sync.getRecord".
1515+//
1616+// did: The DID of the repo.
1717+// rkey: Record Key
1818+func SyncGetRecord(ctx context.Context, c *xrpc.Client, collection string, did string, rkey string) ([]byte, error) {
1919+ buf := new(bytes.Buffer)
2020+2121+ params := map[string]interface{}{
2222+ "collection": collection,
2323+ "did": did,
2424+ "rkey": rkey,
2525+ }
2626+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.getRecord", params, nil, buf); err != nil {
2727+ return nil, err
2828+ }
2929+3030+ return buf.Bytes(), nil
3131+}
+30
api/atproto/syncgetRepo.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.getRepo
66+77+import (
88+ "bytes"
99+ "context"
1010+1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// SyncGetRepo calls the XRPC method "com.atproto.sync.getRepo".
1515+//
1616+// did: The DID of the repo.
1717+// since: The revision ('rev') of the repo to create a diff from.
1818+func SyncGetRepo(ctx context.Context, c *xrpc.Client, did string, since string) ([]byte, error) {
1919+ buf := new(bytes.Buffer)
2020+2121+ params := map[string]interface{}{
2222+ "did": did,
2323+ "since": since,
2424+ }
2525+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.getRepo", params, nil, buf); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return buf.Bytes(), nil
3030+}
+37
api/atproto/syncgetRepoStatus.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.getRepoStatus
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncGetRepoStatus_Output is the output of a com.atproto.sync.getRepoStatus call.
1414+type SyncGetRepoStatus_Output struct {
1515+ Active bool `json:"active" cborgen:"active"`
1616+ Did string `json:"did" cborgen:"did"`
1717+ // rev: Optional field, the current rev of the repo, if active=true
1818+ Rev *string `json:"rev,omitempty" cborgen:"rev,omitempty"`
1919+ // status: 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.
2020+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
2121+}
2222+2323+// SyncGetRepoStatus calls the XRPC method "com.atproto.sync.getRepoStatus".
2424+//
2525+// did: The DID of the repo.
2626+func SyncGetRepoStatus(ctx context.Context, c *xrpc.Client, did string) (*SyncGetRepoStatus_Output, error) {
2727+ var out SyncGetRepoStatus_Output
2828+2929+ params := map[string]interface{}{
3030+ "did": did,
3131+ }
3232+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.getRepoStatus", params, nil, &out); err != nil {
3333+ return nil, err
3434+ }
3535+3636+ return &out, nil
3737+}
+37
api/atproto/synclistBlobs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.listBlobs
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncListBlobs_Output is the output of a com.atproto.sync.listBlobs call.
1414+type SyncListBlobs_Output struct {
1515+ Cids []string `json:"cids" cborgen:"cids"`
1616+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+}
1818+1919+// SyncListBlobs calls the XRPC method "com.atproto.sync.listBlobs".
2020+//
2121+// did: The DID of the repo.
2222+// since: Optional revision of the repo to list blobs since.
2323+func SyncListBlobs(ctx context.Context, c *xrpc.Client, cursor string, did string, limit int64, since string) (*SyncListBlobs_Output, error) {
2424+ var out SyncListBlobs_Output
2525+2626+ params := map[string]interface{}{
2727+ "cursor": cursor,
2828+ "did": did,
2929+ "limit": limit,
3030+ "since": since,
3131+ }
3232+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.listBlobs", params, nil, &out); err != nil {
3333+ return nil, err
3434+ }
3535+3636+ return &out, nil
3737+}
+43
api/atproto/synclistHosts.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.listHosts
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncListHosts_Host is a "host" in the com.atproto.sync.listHosts schema.
1414+type SyncListHosts_Host struct {
1515+ AccountCount *int64 `json:"accountCount,omitempty" cborgen:"accountCount,omitempty"`
1616+ // hostname: hostname of server; not a URL (no scheme)
1717+ Hostname string `json:"hostname" cborgen:"hostname"`
1818+ // seq: Recent repo stream event sequence number. May be delayed from actual stream processing (eg, persisted cursor not in-memory cursor).
1919+ Seq *int64 `json:"seq,omitempty" cborgen:"seq,omitempty"`
2020+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
2121+}
2222+2323+// SyncListHosts_Output is the output of a com.atproto.sync.listHosts call.
2424+type SyncListHosts_Output struct {
2525+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
2626+ // hosts: Sort order is not formally specified. Recommended order is by time host was first seen by the server, with oldest first.
2727+ Hosts []*SyncListHosts_Host `json:"hosts" cborgen:"hosts"`
2828+}
2929+3030+// SyncListHosts calls the XRPC method "com.atproto.sync.listHosts".
3131+func SyncListHosts(ctx context.Context, c *xrpc.Client, cursor string, limit int64) (*SyncListHosts_Output, error) {
3232+ var out SyncListHosts_Output
3333+3434+ params := map[string]interface{}{
3535+ "cursor": cursor,
3636+ "limit": limit,
3737+ }
3838+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.listHosts", params, nil, &out); err != nil {
3939+ return nil, err
4040+ }
4141+4242+ return &out, nil
4343+}
+43
api/atproto/synclistRepos.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.listRepos
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncListRepos_Output is the output of a com.atproto.sync.listRepos call.
1414+type SyncListRepos_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Repos []*SyncListRepos_Repo `json:"repos" cborgen:"repos"`
1717+}
1818+1919+// SyncListRepos_Repo is a "repo" in the com.atproto.sync.listRepos schema.
2020+type SyncListRepos_Repo struct {
2121+ Active *bool `json:"active,omitempty" cborgen:"active,omitempty"`
2222+ Did string `json:"did" cborgen:"did"`
2323+ // head: Current repo commit CID
2424+ Head string `json:"head" cborgen:"head"`
2525+ Rev string `json:"rev" cborgen:"rev"`
2626+ // status: 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.
2727+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
2828+}
2929+3030+// SyncListRepos calls the XRPC method "com.atproto.sync.listRepos".
3131+func SyncListRepos(ctx context.Context, c *xrpc.Client, cursor string, limit int64) (*SyncListRepos_Output, error) {
3232+ var out SyncListRepos_Output
3333+3434+ params := map[string]interface{}{
3535+ "cursor": cursor,
3636+ "limit": limit,
3737+ }
3838+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.listRepos", params, nil, &out); err != nil {
3939+ return nil, err
4040+ }
4141+4242+ return &out, nil
4343+}
+40
api/atproto/synclistReposByCollection.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.listReposByCollection
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncListReposByCollection_Output is the output of a com.atproto.sync.listReposByCollection call.
1414+type SyncListReposByCollection_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Repos []*SyncListReposByCollection_Repo `json:"repos" cborgen:"repos"`
1717+}
1818+1919+// SyncListReposByCollection_Repo is a "repo" in the com.atproto.sync.listReposByCollection schema.
2020+type SyncListReposByCollection_Repo struct {
2121+ Did string `json:"did" cborgen:"did"`
2222+}
2323+2424+// SyncListReposByCollection calls the XRPC method "com.atproto.sync.listReposByCollection".
2525+//
2626+// limit: Maximum size of response set. Recommend setting a large maximum (1000+) when enumerating large DID lists.
2727+func SyncListReposByCollection(ctx context.Context, c *xrpc.Client, collection string, cursor string, limit int64) (*SyncListReposByCollection_Output, error) {
2828+ var out SyncListReposByCollection_Output
2929+3030+ params := map[string]interface{}{
3131+ "collection": collection,
3232+ "cursor": cursor,
3333+ "limit": limit,
3434+ }
3535+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.sync.listReposByCollection", params, nil, &out); err != nil {
3636+ return nil, err
3737+ }
3838+3939+ return &out, nil
4040+}
+26
api/atproto/syncnotifyOfUpdate.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.notifyOfUpdate
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncNotifyOfUpdate_Input is the input argument to a com.atproto.sync.notifyOfUpdate call.
1414+type SyncNotifyOfUpdate_Input struct {
1515+ // hostname: Hostname of the current service (usually a PDS) that is notifying of update.
1616+ Hostname string `json:"hostname" cborgen:"hostname"`
1717+}
1818+1919+// SyncNotifyOfUpdate calls the XRPC method "com.atproto.sync.notifyOfUpdate".
2020+func SyncNotifyOfUpdate(ctx context.Context, c *xrpc.Client, input *SyncNotifyOfUpdate_Input) error {
2121+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.sync.notifyOfUpdate", nil, input, nil); err != nil {
2222+ return err
2323+ }
2424+2525+ return nil
2626+}
+26
api/atproto/syncrequestCrawl.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.requestCrawl
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SyncRequestCrawl_Input is the input argument to a com.atproto.sync.requestCrawl call.
1414+type SyncRequestCrawl_Input struct {
1515+ // hostname: Hostname of the current service (eg, PDS) that is requesting to be crawled.
1616+ Hostname string `json:"hostname" cborgen:"hostname"`
1717+}
1818+1919+// SyncRequestCrawl calls the XRPC method "com.atproto.sync.requestCrawl".
2020+func SyncRequestCrawl(ctx context.Context, c *xrpc.Client, input *SyncRequestCrawl_Input) error {
2121+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.sync.requestCrawl", nil, input, nil); err != nil {
2222+ return err
2323+ }
2424+2525+ return nil
2626+}
+95
api/atproto/syncsubscribeRepos.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.sync.subscribeRepos
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+// SyncSubscribeRepos_Account is a "account" in the com.atproto.sync.subscribeRepos schema.
1212+//
1313+// 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.
1414+type SyncSubscribeRepos_Account struct {
1515+ // active: Indicates that the account has a repository which can be fetched from the host that emitted this event.
1616+ Active bool `json:"active" cborgen:"active"`
1717+ Did string `json:"did" cborgen:"did"`
1818+ Seq int64 `json:"seq" cborgen:"seq"`
1919+ // status: If active=false, this optional field indicates a reason for why the account is not active.
2020+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
2121+ Time string `json:"time" cborgen:"time"`
2222+}
2323+2424+// SyncSubscribeRepos_Commit is a "commit" in the com.atproto.sync.subscribeRepos schema.
2525+//
2626+// 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.
2727+type SyncSubscribeRepos_Commit struct {
2828+ Blobs []util.LexLink `json:"blobs" cborgen:"blobs"`
2929+ // blocks: 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.
3030+ Blocks util.LexBytes `json:"blocks,omitempty" cborgen:"blocks,omitempty"`
3131+ // commit: Repo commit object CID.
3232+ Commit util.LexLink `json:"commit" cborgen:"commit"`
3333+ Ops []*SyncSubscribeRepos_RepoOp `json:"ops" cborgen:"ops"`
3434+ // prevData: 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.
3535+ PrevData *util.LexLink `json:"prevData,omitempty" cborgen:"prevData,omitempty"`
3636+ // rebase: DEPRECATED -- unused
3737+ Rebase bool `json:"rebase" cborgen:"rebase"`
3838+ // repo: The repo this event comes from. Note that all other message types name this field 'did'.
3939+ Repo string `json:"repo" cborgen:"repo"`
4040+ // rev: 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.
4141+ Rev string `json:"rev" cborgen:"rev"`
4242+ // seq: The stream sequence number of this message.
4343+ Seq int64 `json:"seq" cborgen:"seq"`
4444+ // since: The rev of the last emitted commit from this repo (if any).
4545+ Since *string `json:"since" cborgen:"since"`
4646+ // time: Timestamp of when this message was originally broadcast.
4747+ Time string `json:"time" cborgen:"time"`
4848+ // tooBig: 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.
4949+ TooBig bool `json:"tooBig" cborgen:"tooBig"`
5050+}
5151+5252+// SyncSubscribeRepos_Identity is a "identity" in the com.atproto.sync.subscribeRepos schema.
5353+//
5454+// 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.
5555+type SyncSubscribeRepos_Identity struct {
5656+ Did string `json:"did" cborgen:"did"`
5757+ // handle: 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.
5858+ Handle *string `json:"handle,omitempty" cborgen:"handle,omitempty"`
5959+ Seq int64 `json:"seq" cborgen:"seq"`
6060+ Time string `json:"time" cborgen:"time"`
6161+}
6262+6363+// SyncSubscribeRepos_Info is a "info" in the com.atproto.sync.subscribeRepos schema.
6464+type SyncSubscribeRepos_Info struct {
6565+ Message *string `json:"message,omitempty" cborgen:"message,omitempty"`
6666+ Name string `json:"name" cborgen:"name"`
6767+}
6868+6969+// SyncSubscribeRepos_RepoOp is a "repoOp" in the com.atproto.sync.subscribeRepos schema.
7070+//
7171+// A repo operation, ie a mutation of a single record.
7272+type SyncSubscribeRepos_RepoOp struct {
7373+ Action string `json:"action" cborgen:"action"`
7474+ // cid: For creates and updates, the new record CID. For deletions, null.
7575+ Cid *util.LexLink `json:"cid" cborgen:"cid"`
7676+ Path string `json:"path" cborgen:"path"`
7777+ // prev: For updates and deletes, the previous record CID (required for inductive firehose). For creations, field should not be defined.
7878+ Prev *util.LexLink `json:"prev,omitempty" cborgen:"prev,omitempty"`
7979+}
8080+8181+// SyncSubscribeRepos_Sync is a "sync" in the com.atproto.sync.subscribeRepos schema.
8282+//
8383+// 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.
8484+type SyncSubscribeRepos_Sync struct {
8585+ // blocks: CAR file containing the commit, as a block. The CAR header must include the commit block CID as the first 'root'.
8686+ Blocks util.LexBytes `json:"blocks,omitempty" cborgen:"blocks,omitempty"`
8787+ // did: The account this repo event corresponds to. Must match that in the commit object.
8888+ Did string `json:"did" cborgen:"did"`
8989+ // rev: The rev of the commit. This value must match that in the commit object.
9090+ Rev string `json:"rev" cborgen:"rev"`
9191+ // seq: The stream sequence number of this message.
9292+ Seq int64 `json:"seq" cborgen:"seq"`
9393+ // time: Timestamp of when this message was originally broadcast.
9494+ Time string `json:"time" cborgen:"time"`
9595+}
+30
api/atproto/tempaddReservedHandle.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.temp.addReservedHandle
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// TempAddReservedHandle_Input is the input argument to a com.atproto.temp.addReservedHandle call.
1414+type TempAddReservedHandle_Input struct {
1515+ Handle string `json:"handle" cborgen:"handle"`
1616+}
1717+1818+// TempAddReservedHandle_Output is the output of a com.atproto.temp.addReservedHandle call.
1919+type TempAddReservedHandle_Output struct {
2020+}
2121+2222+// TempAddReservedHandle calls the XRPC method "com.atproto.temp.addReservedHandle".
2323+func TempAddReservedHandle(ctx context.Context, c *xrpc.Client, input *TempAddReservedHandle_Input) (*TempAddReservedHandle_Output, error) {
2424+ var out TempAddReservedHandle_Output
2525+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.temp.addReservedHandle", nil, input, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+28
api/atproto/tempcheckSignupQueue.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.temp.checkSignupQueue
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// TempCheckSignupQueue_Output is the output of a com.atproto.temp.checkSignupQueue call.
1414+type TempCheckSignupQueue_Output struct {
1515+ Activated bool `json:"activated" cborgen:"activated"`
1616+ EstimatedTimeMs *int64 `json:"estimatedTimeMs,omitempty" cborgen:"estimatedTimeMs,omitempty"`
1717+ PlaceInQueue *int64 `json:"placeInQueue,omitempty" cborgen:"placeInQueue,omitempty"`
1818+}
1919+2020+// TempCheckSignupQueue calls the XRPC method "com.atproto.temp.checkSignupQueue".
2121+func TempCheckSignupQueue(ctx context.Context, c *xrpc.Client) (*TempCheckSignupQueue_Output, error) {
2222+ var out TempCheckSignupQueue_Output
2323+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.temp.checkSignupQueue", nil, nil, &out); err != nil {
2424+ return nil, err
2525+ }
2626+2727+ return &out, nil
2828+}
+31
api/atproto/tempfetchLabels.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.temp.fetchLabels
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// TempFetchLabels_Output is the output of a com.atproto.temp.fetchLabels call.
1414+type TempFetchLabels_Output struct {
1515+ Labels []*LabelDefs_Label `json:"labels" cborgen:"labels"`
1616+}
1717+1818+// TempFetchLabels calls the XRPC method "com.atproto.temp.fetchLabels".
1919+func TempFetchLabels(ctx context.Context, c *xrpc.Client, limit int64, since int64) (*TempFetchLabels_Output, error) {
2020+ var out TempFetchLabels_Output
2121+2222+ params := map[string]interface{}{
2323+ "limit": limit,
2424+ "since": since,
2525+ }
2626+ if err := c.Do(ctx, xrpc.Query, "", "com.atproto.temp.fetchLabels", params, nil, &out); err != nil {
2727+ return nil, err
2828+ }
2929+3030+ return &out, nil
3131+}
+25
api/atproto/temprequestPhoneVerification.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.temp.requestPhoneVerification
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// TempRequestPhoneVerification_Input is the input argument to a com.atproto.temp.requestPhoneVerification call.
1414+type TempRequestPhoneVerification_Input struct {
1515+ PhoneNumber string `json:"phoneNumber" cborgen:"phoneNumber"`
1616+}
1717+1818+// TempRequestPhoneVerification calls the XRPC method "com.atproto.temp.requestPhoneVerification".
1919+func TempRequestPhoneVerification(ctx context.Context, c *xrpc.Client, input *TempRequestPhoneVerification_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.temp.requestPhoneVerification", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+573
api/bsky/actordefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.actor.defs
66+77+import (
88+ "encoding/json"
99+ "fmt"
1010+1111+ comatprototypes "github.com/bluesky-social/indigo/api/atproto"
1212+ "github.com/bluesky-social/indigo/lex/util"
1313+)
1414+1515+// ActorDefs_AdultContentPref is a "adultContentPref" in the app.bsky.actor.defs schema.
1616+//
1717+// RECORDTYPE: ActorDefs_AdultContentPref
1818+type ActorDefs_AdultContentPref struct {
1919+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#adultContentPref" cborgen:"$type,const=app.bsky.actor.defs#adultContentPref"`
2020+ Enabled bool `json:"enabled" cborgen:"enabled"`
2121+}
2222+2323+// ActorDefs_BskyAppProgressGuide is a "bskyAppProgressGuide" in the app.bsky.actor.defs schema.
2424+//
2525+// If set, an active progress guide. Once completed, can be set to undefined. Should have unspecced fields tracking progress.
2626+type ActorDefs_BskyAppProgressGuide struct {
2727+ Guide string `json:"guide" cborgen:"guide"`
2828+}
2929+3030+// ActorDefs_BskyAppStatePref is a "bskyAppStatePref" in the app.bsky.actor.defs schema.
3131+//
3232+// A grab bag of state that's specific to the bsky.app program. Third-party apps shouldn't use this.
3333+//
3434+// RECORDTYPE: ActorDefs_BskyAppStatePref
3535+type ActorDefs_BskyAppStatePref struct {
3636+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#bskyAppStatePref" cborgen:"$type,const=app.bsky.actor.defs#bskyAppStatePref"`
3737+ ActiveProgressGuide *ActorDefs_BskyAppProgressGuide `json:"activeProgressGuide,omitempty" cborgen:"activeProgressGuide,omitempty"`
3838+ // nuxs: Storage for NUXs the user has encountered.
3939+ Nuxs []*ActorDefs_Nux `json:"nuxs,omitempty" cborgen:"nuxs,omitempty"`
4040+ // queuedNudges: An array of tokens which identify nudges (modals, popups, tours, highlight dots) that should be shown to the user.
4141+ QueuedNudges []string `json:"queuedNudges,omitempty" cborgen:"queuedNudges,omitempty"`
4242+}
4343+4444+// ActorDefs_ContentLabelPref is a "contentLabelPref" in the app.bsky.actor.defs schema.
4545+//
4646+// RECORDTYPE: ActorDefs_ContentLabelPref
4747+type ActorDefs_ContentLabelPref struct {
4848+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#contentLabelPref" cborgen:"$type,const=app.bsky.actor.defs#contentLabelPref"`
4949+ Label string `json:"label" cborgen:"label"`
5050+ // labelerDid: Which labeler does this preference apply to? If undefined, applies globally.
5151+ LabelerDid *string `json:"labelerDid,omitempty" cborgen:"labelerDid,omitempty"`
5252+ Visibility string `json:"visibility" cborgen:"visibility"`
5353+}
5454+5555+// ActorDefs_FeedViewPref is a "feedViewPref" in the app.bsky.actor.defs schema.
5656+//
5757+// RECORDTYPE: ActorDefs_FeedViewPref
5858+type ActorDefs_FeedViewPref struct {
5959+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#feedViewPref" cborgen:"$type,const=app.bsky.actor.defs#feedViewPref"`
6060+ // feed: The URI of the feed, or an identifier which describes the feed.
6161+ Feed string `json:"feed" cborgen:"feed"`
6262+ // hideQuotePosts: Hide quote posts in the feed.
6363+ HideQuotePosts *bool `json:"hideQuotePosts,omitempty" cborgen:"hideQuotePosts,omitempty"`
6464+ // hideReplies: Hide replies in the feed.
6565+ HideReplies *bool `json:"hideReplies,omitempty" cborgen:"hideReplies,omitempty"`
6666+ // hideRepliesByLikeCount: Hide replies in the feed if they do not have this number of likes.
6767+ HideRepliesByLikeCount *int64 `json:"hideRepliesByLikeCount,omitempty" cborgen:"hideRepliesByLikeCount,omitempty"`
6868+ // hideRepliesByUnfollowed: Hide replies in the feed if they are not by followed users.
6969+ HideRepliesByUnfollowed *bool `json:"hideRepliesByUnfollowed,omitempty" cborgen:"hideRepliesByUnfollowed,omitempty"`
7070+ // hideReposts: Hide reposts in the feed.
7171+ HideReposts *bool `json:"hideReposts,omitempty" cborgen:"hideReposts,omitempty"`
7272+}
7373+7474+// ActorDefs_HiddenPostsPref is a "hiddenPostsPref" in the app.bsky.actor.defs schema.
7575+//
7676+// RECORDTYPE: ActorDefs_HiddenPostsPref
7777+type ActorDefs_HiddenPostsPref struct {
7878+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#hiddenPostsPref" cborgen:"$type,const=app.bsky.actor.defs#hiddenPostsPref"`
7979+ // items: A list of URIs of posts the account owner has hidden.
8080+ Items []string `json:"items" cborgen:"items"`
8181+}
8282+8383+// ActorDefs_InterestsPref is a "interestsPref" in the app.bsky.actor.defs schema.
8484+//
8585+// RECORDTYPE: ActorDefs_InterestsPref
8686+type ActorDefs_InterestsPref struct {
8787+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#interestsPref" cborgen:"$type,const=app.bsky.actor.defs#interestsPref"`
8888+ // tags: A list of tags which describe the account owner's interests gathered during onboarding.
8989+ Tags []string `json:"tags" cborgen:"tags"`
9090+}
9191+9292+// ActorDefs_KnownFollowers is a "knownFollowers" in the app.bsky.actor.defs schema.
9393+//
9494+// The subject's followers whom you also follow
9595+type ActorDefs_KnownFollowers struct {
9696+ Count int64 `json:"count" cborgen:"count"`
9797+ Followers []*ActorDefs_ProfileViewBasic `json:"followers" cborgen:"followers"`
9898+}
9999+100100+// ActorDefs_LabelerPrefItem is a "labelerPrefItem" in the app.bsky.actor.defs schema.
101101+type ActorDefs_LabelerPrefItem struct {
102102+ Did string `json:"did" cborgen:"did"`
103103+}
104104+105105+// ActorDefs_LabelersPref is a "labelersPref" in the app.bsky.actor.defs schema.
106106+//
107107+// RECORDTYPE: ActorDefs_LabelersPref
108108+type ActorDefs_LabelersPref struct {
109109+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#labelersPref" cborgen:"$type,const=app.bsky.actor.defs#labelersPref"`
110110+ Labelers []*ActorDefs_LabelerPrefItem `json:"labelers" cborgen:"labelers"`
111111+}
112112+113113+// ActorDefs_MutedWord is a "mutedWord" in the app.bsky.actor.defs schema.
114114+//
115115+// A word that the account owner has muted.
116116+type ActorDefs_MutedWord struct {
117117+ // actorTarget: Groups of users to apply the muted word to. If undefined, applies to all users.
118118+ ActorTarget *string `json:"actorTarget,omitempty" cborgen:"actorTarget,omitempty"`
119119+ // expiresAt: The date and time at which the muted word will expire and no longer be applied.
120120+ ExpiresAt *string `json:"expiresAt,omitempty" cborgen:"expiresAt,omitempty"`
121121+ Id *string `json:"id,omitempty" cborgen:"id,omitempty"`
122122+ // targets: The intended targets of the muted word.
123123+ Targets []*string `json:"targets" cborgen:"targets"`
124124+ // value: The muted word itself.
125125+ Value string `json:"value" cborgen:"value"`
126126+}
127127+128128+// ActorDefs_MutedWordsPref is a "mutedWordsPref" in the app.bsky.actor.defs schema.
129129+//
130130+// RECORDTYPE: ActorDefs_MutedWordsPref
131131+type ActorDefs_MutedWordsPref struct {
132132+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#mutedWordsPref" cborgen:"$type,const=app.bsky.actor.defs#mutedWordsPref"`
133133+ // items: A list of words the account owner has muted.
134134+ Items []*ActorDefs_MutedWord `json:"items" cborgen:"items"`
135135+}
136136+137137+// ActorDefs_Nux is a "nux" in the app.bsky.actor.defs schema.
138138+//
139139+// A new user experiences (NUX) storage object
140140+type ActorDefs_Nux struct {
141141+ Completed bool `json:"completed" cborgen:"completed"`
142142+ // data: Arbitrary data for the NUX. The structure is defined by the NUX itself. Limited to 300 characters.
143143+ Data *string `json:"data,omitempty" cborgen:"data,omitempty"`
144144+ // expiresAt: The date and time at which the NUX will expire and should be considered completed.
145145+ ExpiresAt *string `json:"expiresAt,omitempty" cborgen:"expiresAt,omitempty"`
146146+ Id string `json:"id" cborgen:"id"`
147147+}
148148+149149+// ActorDefs_PersonalDetailsPref is a "personalDetailsPref" in the app.bsky.actor.defs schema.
150150+//
151151+// RECORDTYPE: ActorDefs_PersonalDetailsPref
152152+type ActorDefs_PersonalDetailsPref struct {
153153+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#personalDetailsPref" cborgen:"$type,const=app.bsky.actor.defs#personalDetailsPref"`
154154+ // birthDate: The birth date of account owner.
155155+ BirthDate *string `json:"birthDate,omitempty" cborgen:"birthDate,omitempty"`
156156+}
157157+158158+// ActorDefs_PostInteractionSettingsPref is a "postInteractionSettingsPref" in the app.bsky.actor.defs schema.
159159+//
160160+// Default post interaction settings for the account. These values should be applied as default values when creating new posts. These refs should mirror the threadgate and postgate records exactly.
161161+//
162162+// RECORDTYPE: ActorDefs_PostInteractionSettingsPref
163163+type ActorDefs_PostInteractionSettingsPref struct {
164164+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#postInteractionSettingsPref" cborgen:"$type,const=app.bsky.actor.defs#postInteractionSettingsPref"`
165165+ // postgateEmbeddingRules: Matches postgate record. List of rules defining who can embed this users posts. If value is an empty array or is undefined, no particular rules apply and anyone can embed.
166166+ PostgateEmbeddingRules []*ActorDefs_PostInteractionSettingsPref_PostgateEmbeddingRules_Elem `json:"postgateEmbeddingRules,omitempty" cborgen:"postgateEmbeddingRules,omitempty"`
167167+ // threadgateAllowRules: Matches threadgate record. List of rules defining who can reply to this users posts. If value is an empty array, no one can reply. If value is undefined, anyone can reply.
168168+ ThreadgateAllowRules []*ActorDefs_PostInteractionSettingsPref_ThreadgateAllowRules_Elem `json:"threadgateAllowRules,omitempty" cborgen:"threadgateAllowRules,omitempty"`
169169+}
170170+171171+type ActorDefs_PostInteractionSettingsPref_PostgateEmbeddingRules_Elem struct {
172172+ FeedPostgate_DisableRule *FeedPostgate_DisableRule
173173+}
174174+175175+func (t *ActorDefs_PostInteractionSettingsPref_PostgateEmbeddingRules_Elem) MarshalJSON() ([]byte, error) {
176176+ if t.FeedPostgate_DisableRule != nil {
177177+ t.FeedPostgate_DisableRule.LexiconTypeID = "app.bsky.feed.postgate#disableRule"
178178+ return json.Marshal(t.FeedPostgate_DisableRule)
179179+ }
180180+ return nil, fmt.Errorf("cannot marshal empty enum")
181181+}
182182+func (t *ActorDefs_PostInteractionSettingsPref_PostgateEmbeddingRules_Elem) UnmarshalJSON(b []byte) error {
183183+ typ, err := util.TypeExtract(b)
184184+ if err != nil {
185185+ return err
186186+ }
187187+188188+ switch typ {
189189+ case "app.bsky.feed.postgate#disableRule":
190190+ t.FeedPostgate_DisableRule = new(FeedPostgate_DisableRule)
191191+ return json.Unmarshal(b, t.FeedPostgate_DisableRule)
192192+193193+ default:
194194+ return nil
195195+ }
196196+}
197197+198198+type ActorDefs_PostInteractionSettingsPref_ThreadgateAllowRules_Elem struct {
199199+ FeedThreadgate_MentionRule *FeedThreadgate_MentionRule
200200+ FeedThreadgate_FollowerRule *FeedThreadgate_FollowerRule
201201+ FeedThreadgate_FollowingRule *FeedThreadgate_FollowingRule
202202+ FeedThreadgate_ListRule *FeedThreadgate_ListRule
203203+}
204204+205205+func (t *ActorDefs_PostInteractionSettingsPref_ThreadgateAllowRules_Elem) MarshalJSON() ([]byte, error) {
206206+ if t.FeedThreadgate_MentionRule != nil {
207207+ t.FeedThreadgate_MentionRule.LexiconTypeID = "app.bsky.feed.threadgate#mentionRule"
208208+ return json.Marshal(t.FeedThreadgate_MentionRule)
209209+ }
210210+ if t.FeedThreadgate_FollowerRule != nil {
211211+ t.FeedThreadgate_FollowerRule.LexiconTypeID = "app.bsky.feed.threadgate#followerRule"
212212+ return json.Marshal(t.FeedThreadgate_FollowerRule)
213213+ }
214214+ if t.FeedThreadgate_FollowingRule != nil {
215215+ t.FeedThreadgate_FollowingRule.LexiconTypeID = "app.bsky.feed.threadgate#followingRule"
216216+ return json.Marshal(t.FeedThreadgate_FollowingRule)
217217+ }
218218+ if t.FeedThreadgate_ListRule != nil {
219219+ t.FeedThreadgate_ListRule.LexiconTypeID = "app.bsky.feed.threadgate#listRule"
220220+ return json.Marshal(t.FeedThreadgate_ListRule)
221221+ }
222222+ return nil, fmt.Errorf("cannot marshal empty enum")
223223+}
224224+func (t *ActorDefs_PostInteractionSettingsPref_ThreadgateAllowRules_Elem) UnmarshalJSON(b []byte) error {
225225+ typ, err := util.TypeExtract(b)
226226+ if err != nil {
227227+ return err
228228+ }
229229+230230+ switch typ {
231231+ case "app.bsky.feed.threadgate#mentionRule":
232232+ t.FeedThreadgate_MentionRule = new(FeedThreadgate_MentionRule)
233233+ return json.Unmarshal(b, t.FeedThreadgate_MentionRule)
234234+ case "app.bsky.feed.threadgate#followerRule":
235235+ t.FeedThreadgate_FollowerRule = new(FeedThreadgate_FollowerRule)
236236+ return json.Unmarshal(b, t.FeedThreadgate_FollowerRule)
237237+ case "app.bsky.feed.threadgate#followingRule":
238238+ t.FeedThreadgate_FollowingRule = new(FeedThreadgate_FollowingRule)
239239+ return json.Unmarshal(b, t.FeedThreadgate_FollowingRule)
240240+ case "app.bsky.feed.threadgate#listRule":
241241+ t.FeedThreadgate_ListRule = new(FeedThreadgate_ListRule)
242242+ return json.Unmarshal(b, t.FeedThreadgate_ListRule)
243243+244244+ default:
245245+ return nil
246246+ }
247247+}
248248+249249+type ActorDefs_Preferences_Elem struct {
250250+ ActorDefs_AdultContentPref *ActorDefs_AdultContentPref
251251+ ActorDefs_ContentLabelPref *ActorDefs_ContentLabelPref
252252+ ActorDefs_SavedFeedsPref *ActorDefs_SavedFeedsPref
253253+ ActorDefs_SavedFeedsPrefV2 *ActorDefs_SavedFeedsPrefV2
254254+ ActorDefs_PersonalDetailsPref *ActorDefs_PersonalDetailsPref
255255+ ActorDefs_FeedViewPref *ActorDefs_FeedViewPref
256256+ ActorDefs_ThreadViewPref *ActorDefs_ThreadViewPref
257257+ ActorDefs_InterestsPref *ActorDefs_InterestsPref
258258+ ActorDefs_MutedWordsPref *ActorDefs_MutedWordsPref
259259+ ActorDefs_HiddenPostsPref *ActorDefs_HiddenPostsPref
260260+ ActorDefs_BskyAppStatePref *ActorDefs_BskyAppStatePref
261261+ ActorDefs_LabelersPref *ActorDefs_LabelersPref
262262+ ActorDefs_PostInteractionSettingsPref *ActorDefs_PostInteractionSettingsPref
263263+ ActorDefs_VerificationPrefs *ActorDefs_VerificationPrefs
264264+}
265265+266266+func (t *ActorDefs_Preferences_Elem) MarshalJSON() ([]byte, error) {
267267+ if t.ActorDefs_AdultContentPref != nil {
268268+ t.ActorDefs_AdultContentPref.LexiconTypeID = "app.bsky.actor.defs#adultContentPref"
269269+ return json.Marshal(t.ActorDefs_AdultContentPref)
270270+ }
271271+ if t.ActorDefs_ContentLabelPref != nil {
272272+ t.ActorDefs_ContentLabelPref.LexiconTypeID = "app.bsky.actor.defs#contentLabelPref"
273273+ return json.Marshal(t.ActorDefs_ContentLabelPref)
274274+ }
275275+ if t.ActorDefs_SavedFeedsPref != nil {
276276+ t.ActorDefs_SavedFeedsPref.LexiconTypeID = "app.bsky.actor.defs#savedFeedsPref"
277277+ return json.Marshal(t.ActorDefs_SavedFeedsPref)
278278+ }
279279+ if t.ActorDefs_SavedFeedsPrefV2 != nil {
280280+ t.ActorDefs_SavedFeedsPrefV2.LexiconTypeID = "app.bsky.actor.defs#savedFeedsPrefV2"
281281+ return json.Marshal(t.ActorDefs_SavedFeedsPrefV2)
282282+ }
283283+ if t.ActorDefs_PersonalDetailsPref != nil {
284284+ t.ActorDefs_PersonalDetailsPref.LexiconTypeID = "app.bsky.actor.defs#personalDetailsPref"
285285+ return json.Marshal(t.ActorDefs_PersonalDetailsPref)
286286+ }
287287+ if t.ActorDefs_FeedViewPref != nil {
288288+ t.ActorDefs_FeedViewPref.LexiconTypeID = "app.bsky.actor.defs#feedViewPref"
289289+ return json.Marshal(t.ActorDefs_FeedViewPref)
290290+ }
291291+ if t.ActorDefs_ThreadViewPref != nil {
292292+ t.ActorDefs_ThreadViewPref.LexiconTypeID = "app.bsky.actor.defs#threadViewPref"
293293+ return json.Marshal(t.ActorDefs_ThreadViewPref)
294294+ }
295295+ if t.ActorDefs_InterestsPref != nil {
296296+ t.ActorDefs_InterestsPref.LexiconTypeID = "app.bsky.actor.defs#interestsPref"
297297+ return json.Marshal(t.ActorDefs_InterestsPref)
298298+ }
299299+ if t.ActorDefs_MutedWordsPref != nil {
300300+ t.ActorDefs_MutedWordsPref.LexiconTypeID = "app.bsky.actor.defs#mutedWordsPref"
301301+ return json.Marshal(t.ActorDefs_MutedWordsPref)
302302+ }
303303+ if t.ActorDefs_HiddenPostsPref != nil {
304304+ t.ActorDefs_HiddenPostsPref.LexiconTypeID = "app.bsky.actor.defs#hiddenPostsPref"
305305+ return json.Marshal(t.ActorDefs_HiddenPostsPref)
306306+ }
307307+ if t.ActorDefs_BskyAppStatePref != nil {
308308+ t.ActorDefs_BskyAppStatePref.LexiconTypeID = "app.bsky.actor.defs#bskyAppStatePref"
309309+ return json.Marshal(t.ActorDefs_BskyAppStatePref)
310310+ }
311311+ if t.ActorDefs_LabelersPref != nil {
312312+ t.ActorDefs_LabelersPref.LexiconTypeID = "app.bsky.actor.defs#labelersPref"
313313+ return json.Marshal(t.ActorDefs_LabelersPref)
314314+ }
315315+ if t.ActorDefs_PostInteractionSettingsPref != nil {
316316+ t.ActorDefs_PostInteractionSettingsPref.LexiconTypeID = "app.bsky.actor.defs#postInteractionSettingsPref"
317317+ return json.Marshal(t.ActorDefs_PostInteractionSettingsPref)
318318+ }
319319+ if t.ActorDefs_VerificationPrefs != nil {
320320+ t.ActorDefs_VerificationPrefs.LexiconTypeID = "app.bsky.actor.defs#verificationPrefs"
321321+ return json.Marshal(t.ActorDefs_VerificationPrefs)
322322+ }
323323+ return nil, fmt.Errorf("cannot marshal empty enum")
324324+}
325325+func (t *ActorDefs_Preferences_Elem) UnmarshalJSON(b []byte) error {
326326+ typ, err := util.TypeExtract(b)
327327+ if err != nil {
328328+ return err
329329+ }
330330+331331+ switch typ {
332332+ case "app.bsky.actor.defs#adultContentPref":
333333+ t.ActorDefs_AdultContentPref = new(ActorDefs_AdultContentPref)
334334+ return json.Unmarshal(b, t.ActorDefs_AdultContentPref)
335335+ case "app.bsky.actor.defs#contentLabelPref":
336336+ t.ActorDefs_ContentLabelPref = new(ActorDefs_ContentLabelPref)
337337+ return json.Unmarshal(b, t.ActorDefs_ContentLabelPref)
338338+ case "app.bsky.actor.defs#savedFeedsPref":
339339+ t.ActorDefs_SavedFeedsPref = new(ActorDefs_SavedFeedsPref)
340340+ return json.Unmarshal(b, t.ActorDefs_SavedFeedsPref)
341341+ case "app.bsky.actor.defs#savedFeedsPrefV2":
342342+ t.ActorDefs_SavedFeedsPrefV2 = new(ActorDefs_SavedFeedsPrefV2)
343343+ return json.Unmarshal(b, t.ActorDefs_SavedFeedsPrefV2)
344344+ case "app.bsky.actor.defs#personalDetailsPref":
345345+ t.ActorDefs_PersonalDetailsPref = new(ActorDefs_PersonalDetailsPref)
346346+ return json.Unmarshal(b, t.ActorDefs_PersonalDetailsPref)
347347+ case "app.bsky.actor.defs#feedViewPref":
348348+ t.ActorDefs_FeedViewPref = new(ActorDefs_FeedViewPref)
349349+ return json.Unmarshal(b, t.ActorDefs_FeedViewPref)
350350+ case "app.bsky.actor.defs#threadViewPref":
351351+ t.ActorDefs_ThreadViewPref = new(ActorDefs_ThreadViewPref)
352352+ return json.Unmarshal(b, t.ActorDefs_ThreadViewPref)
353353+ case "app.bsky.actor.defs#interestsPref":
354354+ t.ActorDefs_InterestsPref = new(ActorDefs_InterestsPref)
355355+ return json.Unmarshal(b, t.ActorDefs_InterestsPref)
356356+ case "app.bsky.actor.defs#mutedWordsPref":
357357+ t.ActorDefs_MutedWordsPref = new(ActorDefs_MutedWordsPref)
358358+ return json.Unmarshal(b, t.ActorDefs_MutedWordsPref)
359359+ case "app.bsky.actor.defs#hiddenPostsPref":
360360+ t.ActorDefs_HiddenPostsPref = new(ActorDefs_HiddenPostsPref)
361361+ return json.Unmarshal(b, t.ActorDefs_HiddenPostsPref)
362362+ case "app.bsky.actor.defs#bskyAppStatePref":
363363+ t.ActorDefs_BskyAppStatePref = new(ActorDefs_BskyAppStatePref)
364364+ return json.Unmarshal(b, t.ActorDefs_BskyAppStatePref)
365365+ case "app.bsky.actor.defs#labelersPref":
366366+ t.ActorDefs_LabelersPref = new(ActorDefs_LabelersPref)
367367+ return json.Unmarshal(b, t.ActorDefs_LabelersPref)
368368+ case "app.bsky.actor.defs#postInteractionSettingsPref":
369369+ t.ActorDefs_PostInteractionSettingsPref = new(ActorDefs_PostInteractionSettingsPref)
370370+ return json.Unmarshal(b, t.ActorDefs_PostInteractionSettingsPref)
371371+ case "app.bsky.actor.defs#verificationPrefs":
372372+ t.ActorDefs_VerificationPrefs = new(ActorDefs_VerificationPrefs)
373373+ return json.Unmarshal(b, t.ActorDefs_VerificationPrefs)
374374+375375+ default:
376376+ return nil
377377+ }
378378+}
379379+380380+// ActorDefs_ProfileAssociated is a "profileAssociated" in the app.bsky.actor.defs schema.
381381+type ActorDefs_ProfileAssociated struct {
382382+ Chat *ActorDefs_ProfileAssociatedChat `json:"chat,omitempty" cborgen:"chat,omitempty"`
383383+ Feedgens *int64 `json:"feedgens,omitempty" cborgen:"feedgens,omitempty"`
384384+ Labeler *bool `json:"labeler,omitempty" cborgen:"labeler,omitempty"`
385385+ Lists *int64 `json:"lists,omitempty" cborgen:"lists,omitempty"`
386386+ StarterPacks *int64 `json:"starterPacks,omitempty" cborgen:"starterPacks,omitempty"`
387387+}
388388+389389+// ActorDefs_ProfileAssociatedChat is a "profileAssociatedChat" in the app.bsky.actor.defs schema.
390390+type ActorDefs_ProfileAssociatedChat struct {
391391+ AllowIncoming string `json:"allowIncoming" cborgen:"allowIncoming"`
392392+}
393393+394394+// ActorDefs_ProfileView is a "profileView" in the app.bsky.actor.defs schema.
395395+type ActorDefs_ProfileView struct {
396396+ Associated *ActorDefs_ProfileAssociated `json:"associated,omitempty" cborgen:"associated,omitempty"`
397397+ Avatar *string `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
398398+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
399399+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
400400+ Did string `json:"did" cborgen:"did"`
401401+ DisplayName *string `json:"displayName,omitempty" cborgen:"displayName,omitempty"`
402402+ Handle string `json:"handle" cborgen:"handle"`
403403+ IndexedAt *string `json:"indexedAt,omitempty" cborgen:"indexedAt,omitempty"`
404404+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
405405+ Status *ActorDefs_StatusView `json:"status,omitempty" cborgen:"status,omitempty"`
406406+ Verification *ActorDefs_VerificationState `json:"verification,omitempty" cborgen:"verification,omitempty"`
407407+ Viewer *ActorDefs_ViewerState `json:"viewer,omitempty" cborgen:"viewer,omitempty"`
408408+}
409409+410410+// ActorDefs_ProfileViewBasic is a "profileViewBasic" in the app.bsky.actor.defs schema.
411411+type ActorDefs_ProfileViewBasic struct {
412412+ Associated *ActorDefs_ProfileAssociated `json:"associated,omitempty" cborgen:"associated,omitempty"`
413413+ Avatar *string `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
414414+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
415415+ Did string `json:"did" cborgen:"did"`
416416+ DisplayName *string `json:"displayName,omitempty" cborgen:"displayName,omitempty"`
417417+ Handle string `json:"handle" cborgen:"handle"`
418418+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
419419+ Status *ActorDefs_StatusView `json:"status,omitempty" cborgen:"status,omitempty"`
420420+ Verification *ActorDefs_VerificationState `json:"verification,omitempty" cborgen:"verification,omitempty"`
421421+ Viewer *ActorDefs_ViewerState `json:"viewer,omitempty" cborgen:"viewer,omitempty"`
422422+}
423423+424424+// ActorDefs_ProfileViewDetailed is a "profileViewDetailed" in the app.bsky.actor.defs schema.
425425+type ActorDefs_ProfileViewDetailed struct {
426426+ Associated *ActorDefs_ProfileAssociated `json:"associated,omitempty" cborgen:"associated,omitempty"`
427427+ Avatar *string `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
428428+ Banner *string `json:"banner,omitempty" cborgen:"banner,omitempty"`
429429+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
430430+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
431431+ Did string `json:"did" cborgen:"did"`
432432+ DisplayName *string `json:"displayName,omitempty" cborgen:"displayName,omitempty"`
433433+ FollowersCount *int64 `json:"followersCount,omitempty" cborgen:"followersCount,omitempty"`
434434+ FollowsCount *int64 `json:"followsCount,omitempty" cborgen:"followsCount,omitempty"`
435435+ Handle string `json:"handle" cborgen:"handle"`
436436+ IndexedAt *string `json:"indexedAt,omitempty" cborgen:"indexedAt,omitempty"`
437437+ JoinedViaStarterPack *GraphDefs_StarterPackViewBasic `json:"joinedViaStarterPack,omitempty" cborgen:"joinedViaStarterPack,omitempty"`
438438+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
439439+ PinnedPost *comatprototypes.RepoStrongRef `json:"pinnedPost,omitempty" cborgen:"pinnedPost,omitempty"`
440440+ PostsCount *int64 `json:"postsCount,omitempty" cborgen:"postsCount,omitempty"`
441441+ Status *ActorDefs_StatusView `json:"status,omitempty" cborgen:"status,omitempty"`
442442+ Verification *ActorDefs_VerificationState `json:"verification,omitempty" cborgen:"verification,omitempty"`
443443+ Viewer *ActorDefs_ViewerState `json:"viewer,omitempty" cborgen:"viewer,omitempty"`
444444+}
445445+446446+// ActorDefs_SavedFeed is a "savedFeed" in the app.bsky.actor.defs schema.
447447+type ActorDefs_SavedFeed struct {
448448+ Id string `json:"id" cborgen:"id"`
449449+ Pinned bool `json:"pinned" cborgen:"pinned"`
450450+ Type string `json:"type" cborgen:"type"`
451451+ Value string `json:"value" cborgen:"value"`
452452+}
453453+454454+// ActorDefs_SavedFeedsPref is a "savedFeedsPref" in the app.bsky.actor.defs schema.
455455+//
456456+// RECORDTYPE: ActorDefs_SavedFeedsPref
457457+type ActorDefs_SavedFeedsPref struct {
458458+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#savedFeedsPref" cborgen:"$type,const=app.bsky.actor.defs#savedFeedsPref"`
459459+ Pinned []string `json:"pinned" cborgen:"pinned"`
460460+ Saved []string `json:"saved" cborgen:"saved"`
461461+ TimelineIndex *int64 `json:"timelineIndex,omitempty" cborgen:"timelineIndex,omitempty"`
462462+}
463463+464464+// ActorDefs_SavedFeedsPrefV2 is a "savedFeedsPrefV2" in the app.bsky.actor.defs schema.
465465+//
466466+// RECORDTYPE: ActorDefs_SavedFeedsPrefV2
467467+type ActorDefs_SavedFeedsPrefV2 struct {
468468+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#savedFeedsPrefV2" cborgen:"$type,const=app.bsky.actor.defs#savedFeedsPrefV2"`
469469+ Items []*ActorDefs_SavedFeed `json:"items" cborgen:"items"`
470470+}
471471+472472+// ActorDefs_StatusView is a "statusView" in the app.bsky.actor.defs schema.
473473+type ActorDefs_StatusView struct {
474474+ // embed: An optional embed associated with the status.
475475+ Embed *ActorDefs_StatusView_Embed `json:"embed,omitempty" cborgen:"embed,omitempty"`
476476+ // expiresAt: The date when this status will expire. The application might choose to no longer return the status after expiration.
477477+ ExpiresAt *string `json:"expiresAt,omitempty" cborgen:"expiresAt,omitempty"`
478478+ // isActive: True if the status is not expired, false if it is expired. Only present if expiration was set.
479479+ IsActive *bool `json:"isActive,omitempty" cborgen:"isActive,omitempty"`
480480+ Record *util.LexiconTypeDecoder `json:"record" cborgen:"record"`
481481+ // status: The status for the account.
482482+ Status string `json:"status" cborgen:"status"`
483483+}
484484+485485+// An optional embed associated with the status.
486486+type ActorDefs_StatusView_Embed struct {
487487+ EmbedExternal_View *EmbedExternal_View
488488+}
489489+490490+func (t *ActorDefs_StatusView_Embed) MarshalJSON() ([]byte, error) {
491491+ if t.EmbedExternal_View != nil {
492492+ t.EmbedExternal_View.LexiconTypeID = "app.bsky.embed.external#view"
493493+ return json.Marshal(t.EmbedExternal_View)
494494+ }
495495+ return nil, fmt.Errorf("cannot marshal empty enum")
496496+}
497497+func (t *ActorDefs_StatusView_Embed) UnmarshalJSON(b []byte) error {
498498+ typ, err := util.TypeExtract(b)
499499+ if err != nil {
500500+ return err
501501+ }
502502+503503+ switch typ {
504504+ case "app.bsky.embed.external#view":
505505+ t.EmbedExternal_View = new(EmbedExternal_View)
506506+ return json.Unmarshal(b, t.EmbedExternal_View)
507507+508508+ default:
509509+ return nil
510510+ }
511511+}
512512+513513+// ActorDefs_ThreadViewPref is a "threadViewPref" in the app.bsky.actor.defs schema.
514514+//
515515+// RECORDTYPE: ActorDefs_ThreadViewPref
516516+type ActorDefs_ThreadViewPref struct {
517517+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#threadViewPref" cborgen:"$type,const=app.bsky.actor.defs#threadViewPref"`
518518+ // prioritizeFollowedUsers: Show followed users at the top of all replies.
519519+ PrioritizeFollowedUsers *bool `json:"prioritizeFollowedUsers,omitempty" cborgen:"prioritizeFollowedUsers,omitempty"`
520520+ // sort: Sorting mode for threads.
521521+ Sort *string `json:"sort,omitempty" cborgen:"sort,omitempty"`
522522+}
523523+524524+// ActorDefs_VerificationPrefs is a "verificationPrefs" in the app.bsky.actor.defs schema.
525525+//
526526+// Preferences for how verified accounts appear in the app.
527527+//
528528+// RECORDTYPE: ActorDefs_VerificationPrefs
529529+type ActorDefs_VerificationPrefs struct {
530530+ LexiconTypeID string `json:"$type,const=app.bsky.actor.defs#verificationPrefs" cborgen:"$type,const=app.bsky.actor.defs#verificationPrefs"`
531531+ // hideBadges: Hide the blue check badges for verified accounts and trusted verifiers.
532532+ HideBadges *bool `json:"hideBadges,omitempty" cborgen:"hideBadges,omitempty"`
533533+}
534534+535535+// ActorDefs_VerificationState is a "verificationState" in the app.bsky.actor.defs schema.
536536+//
537537+// Represents the verification information about the user this object is attached to.
538538+type ActorDefs_VerificationState struct {
539539+ // trustedVerifierStatus: The user's status as a trusted verifier.
540540+ TrustedVerifierStatus string `json:"trustedVerifierStatus" cborgen:"trustedVerifierStatus"`
541541+ // verifications: All verifications issued by trusted verifiers on behalf of this user. Verifications by untrusted verifiers are not included.
542542+ Verifications []*ActorDefs_VerificationView `json:"verifications" cborgen:"verifications"`
543543+ // verifiedStatus: The user's status as a verified account.
544544+ VerifiedStatus string `json:"verifiedStatus" cborgen:"verifiedStatus"`
545545+}
546546+547547+// ActorDefs_VerificationView is a "verificationView" in the app.bsky.actor.defs schema.
548548+//
549549+// An individual verification for an associated subject.
550550+type ActorDefs_VerificationView struct {
551551+ // createdAt: Timestamp when the verification was created.
552552+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
553553+ // isValid: True if the verification passes validation, otherwise false.
554554+ IsValid bool `json:"isValid" cborgen:"isValid"`
555555+ // issuer: The user who issued this verification.
556556+ Issuer string `json:"issuer" cborgen:"issuer"`
557557+ // uri: The AT-URI of the verification record.
558558+ Uri string `json:"uri" cborgen:"uri"`
559559+}
560560+561561+// ActorDefs_ViewerState is a "viewerState" in the app.bsky.actor.defs schema.
562562+//
563563+// Metadata about the requesting account's relationship with the subject account. Only has meaningful content for authed requests.
564564+type ActorDefs_ViewerState struct {
565565+ BlockedBy *bool `json:"blockedBy,omitempty" cborgen:"blockedBy,omitempty"`
566566+ Blocking *string `json:"blocking,omitempty" cborgen:"blocking,omitempty"`
567567+ BlockingByList *GraphDefs_ListViewBasic `json:"blockingByList,omitempty" cborgen:"blockingByList,omitempty"`
568568+ FollowedBy *string `json:"followedBy,omitempty" cborgen:"followedBy,omitempty"`
569569+ Following *string `json:"following,omitempty" cborgen:"following,omitempty"`
570570+ KnownFollowers *ActorDefs_KnownFollowers `json:"knownFollowers,omitempty" cborgen:"knownFollowers,omitempty"`
571571+ Muted *bool `json:"muted,omitempty" cborgen:"muted,omitempty"`
572572+ MutedByList *GraphDefs_ListViewBasic `json:"mutedByList,omitempty" cborgen:"mutedByList,omitempty"`
573573+}
+28
api/bsky/actorgetPreferences.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.actor.getPreferences
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ActorGetPreferences_Output is the output of a app.bsky.actor.getPreferences call.
1414+type ActorGetPreferences_Output struct {
1515+ Preferences []ActorDefs_Preferences_Elem `json:"preferences" cborgen:"preferences"`
1616+}
1717+1818+// ActorGetPreferences calls the XRPC method "app.bsky.actor.getPreferences".
1919+func ActorGetPreferences(ctx context.Context, c *xrpc.Client) (*ActorGetPreferences_Output, error) {
2020+ var out ActorGetPreferences_Output
2121+2222+ params := map[string]interface{}{}
2323+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.actor.getPreferences", params, nil, &out); err != nil {
2424+ return nil, err
2525+ }
2626+2727+ return &out, nil
2828+}
+27
api/bsky/actorgetProfile.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.actor.getProfile
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ActorGetProfile calls the XRPC method "app.bsky.actor.getProfile".
1414+//
1515+// actor: Handle or DID of account to fetch profile of.
1616+func ActorGetProfile(ctx context.Context, c *xrpc.Client, actor string) (*ActorDefs_ProfileViewDetailed, error) {
1717+ var out ActorDefs_ProfileViewDetailed
1818+1919+ params := map[string]interface{}{
2020+ "actor": actor,
2121+ }
2222+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.actor.getProfile", params, nil, &out); err != nil {
2323+ return nil, err
2424+ }
2525+2626+ return &out, nil
2727+}
+30
api/bsky/actorgetProfiles.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.actor.getProfiles
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ActorGetProfiles_Output is the output of a app.bsky.actor.getProfiles call.
1414+type ActorGetProfiles_Output struct {
1515+ Profiles []*ActorDefs_ProfileViewDetailed `json:"profiles" cborgen:"profiles"`
1616+}
1717+1818+// ActorGetProfiles calls the XRPC method "app.bsky.actor.getProfiles".
1919+func ActorGetProfiles(ctx context.Context, c *xrpc.Client, actors []string) (*ActorGetProfiles_Output, error) {
2020+ var out ActorGetProfiles_Output
2121+2222+ params := map[string]interface{}{
2323+ "actors": actors,
2424+ }
2525+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.actor.getProfiles", params, nil, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+34
api/bsky/actorgetSuggestions.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.actor.getSuggestions
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ActorGetSuggestions_Output is the output of a app.bsky.actor.getSuggestions call.
1414+type ActorGetSuggestions_Output struct {
1515+ Actors []*ActorDefs_ProfileView `json:"actors" cborgen:"actors"`
1616+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+ // recId: Snowflake for this recommendation, use when submitting recommendation events.
1818+ RecId *int64 `json:"recId,omitempty" cborgen:"recId,omitempty"`
1919+}
2020+2121+// ActorGetSuggestions calls the XRPC method "app.bsky.actor.getSuggestions".
2222+func ActorGetSuggestions(ctx context.Context, c *xrpc.Client, cursor string, limit int64) (*ActorGetSuggestions_Output, error) {
2323+ var out ActorGetSuggestions_Output
2424+2525+ params := map[string]interface{}{
2626+ "cursor": cursor,
2727+ "limit": limit,
2828+ }
2929+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.actor.getSuggestions", params, nil, &out); err != nil {
3030+ return nil, err
3131+ }
3232+3333+ return &out, nil
3434+}
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.actor.putPreferences
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ActorPutPreferences_Input is the input argument to a app.bsky.actor.putPreferences call.
1414+type ActorPutPreferences_Input struct {
1515+ Preferences []ActorDefs_Preferences_Elem `json:"preferences" cborgen:"preferences"`
1616+}
1717+1818+// ActorPutPreferences calls the XRPC method "app.bsky.actor.putPreferences".
1919+func ActorPutPreferences(ctx context.Context, c *xrpc.Client, input *ActorPutPreferences_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.actor.putPreferences", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+37
api/bsky/actorsearchActors.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.actor.searchActors
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ActorSearchActors_Output is the output of a app.bsky.actor.searchActors call.
1414+type ActorSearchActors_Output struct {
1515+ Actors []*ActorDefs_ProfileView `json:"actors" cborgen:"actors"`
1616+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+}
1818+1919+// ActorSearchActors calls the XRPC method "app.bsky.actor.searchActors".
2020+//
2121+// q: Search query string. Syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended.
2222+// term: DEPRECATED: use 'q' instead.
2323+func ActorSearchActors(ctx context.Context, c *xrpc.Client, cursor string, limit int64, q string, term string) (*ActorSearchActors_Output, error) {
2424+ var out ActorSearchActors_Output
2525+2626+ params := map[string]interface{}{
2727+ "cursor": cursor,
2828+ "limit": limit,
2929+ "q": q,
3030+ "term": term,
3131+ }
3232+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.actor.searchActors", params, nil, &out); err != nil {
3333+ return nil, err
3434+ }
3535+3636+ return &out, nil
3737+}
+35
api/bsky/actorsearchActorsTypeahead.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.actor.searchActorsTypeahead
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ActorSearchActorsTypeahead_Output is the output of a app.bsky.actor.searchActorsTypeahead call.
1414+type ActorSearchActorsTypeahead_Output struct {
1515+ Actors []*ActorDefs_ProfileViewBasic `json:"actors" cborgen:"actors"`
1616+}
1717+1818+// ActorSearchActorsTypeahead calls the XRPC method "app.bsky.actor.searchActorsTypeahead".
1919+//
2020+// q: Search query prefix; not a full query string.
2121+// term: DEPRECATED: use 'q' instead.
2222+func ActorSearchActorsTypeahead(ctx context.Context, c *xrpc.Client, limit int64, q string, term string) (*ActorSearchActorsTypeahead_Output, error) {
2323+ var out ActorSearchActorsTypeahead_Output
2424+2525+ params := map[string]interface{}{
2626+ "limit": limit,
2727+ "q": q,
2828+ "term": term,
2929+ }
3030+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.actor.searchActorsTypeahead", params, nil, &out); err != nil {
3131+ return nil, err
3232+ }
3333+3434+ return &out, nil
3535+}
+85
api/bsky/actorstatus.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.actor.status
66+77+import (
88+ "bytes"
99+ "encoding/json"
1010+ "fmt"
1111+ "io"
1212+1313+ "github.com/bluesky-social/indigo/lex/util"
1414+ cbg "github.com/whyrusleeping/cbor-gen"
1515+)
1616+1717+func init() {
1818+ util.RegisterType("app.bsky.actor.status", &ActorStatus{})
1919+} //
2020+// RECORDTYPE: ActorStatus
2121+type ActorStatus struct {
2222+ LexiconTypeID string `json:"$type,const=app.bsky.actor.status" cborgen:"$type,const=app.bsky.actor.status"`
2323+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
2424+ // durationMinutes: The duration of the status in minutes. Applications can choose to impose minimum and maximum limits.
2525+ DurationMinutes *int64 `json:"durationMinutes,omitempty" cborgen:"durationMinutes,omitempty"`
2626+ // embed: An optional embed associated with the status.
2727+ Embed *ActorStatus_Embed `json:"embed,omitempty" cborgen:"embed,omitempty"`
2828+ // status: The status for the account.
2929+ Status string `json:"status" cborgen:"status"`
3030+}
3131+3232+// An optional embed associated with the status.
3333+type ActorStatus_Embed struct {
3434+ EmbedExternal *EmbedExternal
3535+}
3636+3737+func (t *ActorStatus_Embed) MarshalJSON() ([]byte, error) {
3838+ if t.EmbedExternal != nil {
3939+ t.EmbedExternal.LexiconTypeID = "app.bsky.embed.external"
4040+ return json.Marshal(t.EmbedExternal)
4141+ }
4242+ return nil, fmt.Errorf("cannot marshal empty enum")
4343+}
4444+func (t *ActorStatus_Embed) UnmarshalJSON(b []byte) error {
4545+ typ, err := util.TypeExtract(b)
4646+ if err != nil {
4747+ return err
4848+ }
4949+5050+ switch typ {
5151+ case "app.bsky.embed.external":
5252+ t.EmbedExternal = new(EmbedExternal)
5353+ return json.Unmarshal(b, t.EmbedExternal)
5454+5555+ default:
5656+ return nil
5757+ }
5858+}
5959+6060+func (t *ActorStatus_Embed) MarshalCBOR(w io.Writer) error {
6161+6262+ if t == nil {
6363+ _, err := w.Write(cbg.CborNull)
6464+ return err
6565+ }
6666+ if t.EmbedExternal != nil {
6767+ return t.EmbedExternal.MarshalCBOR(w)
6868+ }
6969+ return fmt.Errorf("cannot cbor marshal empty enum")
7070+}
7171+func (t *ActorStatus_Embed) UnmarshalCBOR(r io.Reader) error {
7272+ typ, b, err := util.CborTypeExtractReader(r)
7373+ if err != nil {
7474+ return err
7575+ }
7676+7777+ switch typ {
7878+ case "app.bsky.embed.external":
7979+ t.EmbedExternal = new(EmbedExternal)
8080+ return t.EmbedExternal.UnmarshalCBOR(bytes.NewReader(b))
8181+8282+ default:
8383+ return nil
8484+ }
8585+}
+13
api/bsky/embeddefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.embed.defs
66+77+// EmbedDefs_AspectRatio is a "aspectRatio" in the app.bsky.embed.defs schema.
88+//
99+// width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit.
1010+type EmbedDefs_AspectRatio struct {
1111+ Height int64 `json:"height" cborgen:"height"`
1212+ Width int64 `json:"width" cborgen:"width"`
1313+}
+44
api/bsky/embedexternal.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.embed.external
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("app.bsky.embed.external#main", &EmbedExternal{})
1313+} // EmbedExternal is a "main" in the app.bsky.embed.external schema.
1414+// A representation of some externally linked content (eg, a URL and 'card'), embedded in a Bluesky record (eg, a post).
1515+//
1616+// RECORDTYPE: EmbedExternal
1717+type EmbedExternal struct {
1818+ LexiconTypeID string `json:"$type,const=app.bsky.embed.external" cborgen:"$type,const=app.bsky.embed.external"`
1919+ External *EmbedExternal_External `json:"external" cborgen:"external"`
2020+}
2121+2222+// EmbedExternal_External is a "external" in the app.bsky.embed.external schema.
2323+type EmbedExternal_External struct {
2424+ Description string `json:"description" cborgen:"description"`
2525+ Thumb *util.LexBlob `json:"thumb,omitempty" cborgen:"thumb,omitempty"`
2626+ Title string `json:"title" cborgen:"title"`
2727+ Uri string `json:"uri" cborgen:"uri"`
2828+}
2929+3030+// EmbedExternal_View is a "view" in the app.bsky.embed.external schema.
3131+//
3232+// RECORDTYPE: EmbedExternal_View
3333+type EmbedExternal_View struct {
3434+ LexiconTypeID string `json:"$type,const=app.bsky.embed.external#view" cborgen:"$type,const=app.bsky.embed.external#view"`
3535+ External *EmbedExternal_ViewExternal `json:"external" cborgen:"external"`
3636+}
3737+3838+// EmbedExternal_ViewExternal is a "viewExternal" in the app.bsky.embed.external schema.
3939+type EmbedExternal_ViewExternal struct {
4040+ Description string `json:"description" cborgen:"description"`
4141+ Thumb *string `json:"thumb,omitempty" cborgen:"thumb,omitempty"`
4242+ Title string `json:"title" cborgen:"title"`
4343+ Uri string `json:"uri" cborgen:"uri"`
4444+}
+45
api/bsky/embedimages.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.embed.images
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("app.bsky.embed.images#main", &EmbedImages{})
1313+} // EmbedImages is a "main" in the app.bsky.embed.images schema.
1414+// RECORDTYPE: EmbedImages
1515+type EmbedImages struct {
1616+ LexiconTypeID string `json:"$type,const=app.bsky.embed.images" cborgen:"$type,const=app.bsky.embed.images"`
1717+ Images []*EmbedImages_Image `json:"images" cborgen:"images"`
1818+}
1919+2020+// EmbedImages_Image is a "image" in the app.bsky.embed.images schema.
2121+type EmbedImages_Image struct {
2222+ // alt: Alt text description of the image, for accessibility.
2323+ Alt string `json:"alt" cborgen:"alt"`
2424+ AspectRatio *EmbedDefs_AspectRatio `json:"aspectRatio,omitempty" cborgen:"aspectRatio,omitempty"`
2525+ Image *util.LexBlob `json:"image" cborgen:"image"`
2626+}
2727+2828+// EmbedImages_View is a "view" in the app.bsky.embed.images schema.
2929+//
3030+// RECORDTYPE: EmbedImages_View
3131+type EmbedImages_View struct {
3232+ LexiconTypeID string `json:"$type,const=app.bsky.embed.images#view" cborgen:"$type,const=app.bsky.embed.images#view"`
3333+ Images []*EmbedImages_ViewImage `json:"images" cborgen:"images"`
3434+}
3535+3636+// EmbedImages_ViewImage is a "viewImage" in the app.bsky.embed.images schema.
3737+type EmbedImages_ViewImage struct {
3838+ // alt: Alt text description of the image, for accessibility.
3939+ Alt string `json:"alt" cborgen:"alt"`
4040+ AspectRatio *EmbedDefs_AspectRatio `json:"aspectRatio,omitempty" cborgen:"aspectRatio,omitempty"`
4141+ // fullsize: Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View.
4242+ Fullsize string `json:"fullsize" cborgen:"fullsize"`
4343+ // thumb: Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View.
4444+ Thumb string `json:"thumb" cborgen:"thumb"`
4545+}
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.feed.searchPosts
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// FeedSearchPosts_Output is the output of a app.bsky.feed.searchPosts call.
1414+type FeedSearchPosts_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ // hitsTotal: Count of search hits. Optional, may be rounded/truncated, and may not be possible to paginate through all hits.
1717+ HitsTotal *int64 `json:"hitsTotal,omitempty" cborgen:"hitsTotal,omitempty"`
1818+ Posts []*FeedDefs_PostView `json:"posts" cborgen:"posts"`
1919+}
2020+2121+// FeedSearchPosts calls the XRPC method "app.bsky.feed.searchPosts".
2222+//
2323+// author: Filter to posts by the given account. Handles are resolved to DID before query-time.
2424+// cursor: Optional pagination mechanism; may not necessarily allow scrolling through entire result set.
2525+// domain: Filter to posts with URLs (facet links or embeds) linking to the given domain (hostname). Server may apply hostname normalization.
2626+// lang: Filter to posts in the given language. Expected to be based on post language field, though server may override language detection.
2727+// mentions: Filter to posts which mention the given account. Handles are resolved to DID before query-time. Only matches rich-text facet mentions.
2828+// q: Search query string; syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended.
2929+// since: Filter results for posts after the indicated datetime (inclusive). Expected to use 'sortAt' timestamp, which may not match 'createdAt'. Can be a datetime, or just an ISO date (YYYY-MM-DD).
3030+// sort: Specifies the ranking order of results.
3131+// tag: Filter to posts with the given tag (hashtag), based on rich-text facet or tag field. Do not include the hash (#) prefix. Multiple tags can be specified, with 'AND' matching.
3232+// until: Filter results for posts before the indicated datetime (not inclusive). Expected to use 'sortAt' timestamp, which may not match 'createdAt'. Can be a datetime, or just an ISO date (YYY-MM-DD).
3333+// url: Filter to posts with links (facet links or embeds) pointing to this URL. Server may apply URL normalization or fuzzy matching.
3434+func FeedSearchPosts(ctx context.Context, c *xrpc.Client, author string, cursor string, domain string, lang string, limit int64, mentions string, q string, since string, sort string, tag []string, until string, url string) (*FeedSearchPosts_Output, error) {
3535+ var out FeedSearchPosts_Output
3636+3737+ params := map[string]interface{}{
3838+ "author": author,
3939+ "cursor": cursor,
4040+ "domain": domain,
4141+ "lang": lang,
4242+ "limit": limit,
4343+ "mentions": mentions,
4444+ "q": q,
4545+ "since": since,
4646+ "sort": sort,
4747+ "tag": tag,
4848+ "until": until,
4949+ "url": url,
5050+ }
5151+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.feed.searchPosts", params, nil, &out); err != nil {
5252+ return nil, err
5353+ }
5454+5555+ return &out, nil
5656+}
+30
api/bsky/feedsendInteractions.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.feed.sendInteractions
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// FeedSendInteractions_Input is the input argument to a app.bsky.feed.sendInteractions call.
1414+type FeedSendInteractions_Input struct {
1515+ Interactions []*FeedDefs_Interaction `json:"interactions" cborgen:"interactions"`
1616+}
1717+1818+// FeedSendInteractions_Output is the output of a app.bsky.feed.sendInteractions call.
1919+type FeedSendInteractions_Output struct {
2020+}
2121+2222+// FeedSendInteractions calls the XRPC method "app.bsky.feed.sendInteractions".
2323+func FeedSendInteractions(ctx context.Context, c *xrpc.Client, input *FeedSendInteractions_Input) (*FeedSendInteractions_Output, error) {
2424+ var out FeedSendInteractions_Output
2525+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.feed.sendInteractions", nil, input, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+163
api/bsky/feedthreadgate.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.feed.threadgate
66+77+import (
88+ "bytes"
99+ "encoding/json"
1010+ "fmt"
1111+ "io"
1212+1313+ "github.com/bluesky-social/indigo/lex/util"
1414+ cbg "github.com/whyrusleeping/cbor-gen"
1515+)
1616+1717+func init() {
1818+ util.RegisterType("app.bsky.feed.threadgate", &FeedThreadgate{})
1919+} //
2020+// RECORDTYPE: FeedThreadgate
2121+type FeedThreadgate struct {
2222+ LexiconTypeID string `json:"$type,const=app.bsky.feed.threadgate" cborgen:"$type,const=app.bsky.feed.threadgate"`
2323+ // allow: List of rules defining who can reply to this post. If value is an empty array, no one can reply. If value is undefined, anyone can reply.
2424+ Allow []*FeedThreadgate_Allow_Elem `json:"allow,omitempty" cborgen:"allow,omitempty"`
2525+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
2626+ // hiddenReplies: List of hidden reply URIs.
2727+ HiddenReplies []string `json:"hiddenReplies,omitempty" cborgen:"hiddenReplies,omitempty"`
2828+ // post: Reference (AT-URI) to the post record.
2929+ Post string `json:"post" cborgen:"post"`
3030+}
3131+3232+type FeedThreadgate_Allow_Elem struct {
3333+ FeedThreadgate_MentionRule *FeedThreadgate_MentionRule
3434+ FeedThreadgate_FollowerRule *FeedThreadgate_FollowerRule
3535+ FeedThreadgate_FollowingRule *FeedThreadgate_FollowingRule
3636+ FeedThreadgate_ListRule *FeedThreadgate_ListRule
3737+}
3838+3939+func (t *FeedThreadgate_Allow_Elem) MarshalJSON() ([]byte, error) {
4040+ if t.FeedThreadgate_MentionRule != nil {
4141+ t.FeedThreadgate_MentionRule.LexiconTypeID = "app.bsky.feed.threadgate#mentionRule"
4242+ return json.Marshal(t.FeedThreadgate_MentionRule)
4343+ }
4444+ if t.FeedThreadgate_FollowerRule != nil {
4545+ t.FeedThreadgate_FollowerRule.LexiconTypeID = "app.bsky.feed.threadgate#followerRule"
4646+ return json.Marshal(t.FeedThreadgate_FollowerRule)
4747+ }
4848+ if t.FeedThreadgate_FollowingRule != nil {
4949+ t.FeedThreadgate_FollowingRule.LexiconTypeID = "app.bsky.feed.threadgate#followingRule"
5050+ return json.Marshal(t.FeedThreadgate_FollowingRule)
5151+ }
5252+ if t.FeedThreadgate_ListRule != nil {
5353+ t.FeedThreadgate_ListRule.LexiconTypeID = "app.bsky.feed.threadgate#listRule"
5454+ return json.Marshal(t.FeedThreadgate_ListRule)
5555+ }
5656+ return nil, fmt.Errorf("cannot marshal empty enum")
5757+}
5858+func (t *FeedThreadgate_Allow_Elem) UnmarshalJSON(b []byte) error {
5959+ typ, err := util.TypeExtract(b)
6060+ if err != nil {
6161+ return err
6262+ }
6363+6464+ switch typ {
6565+ case "app.bsky.feed.threadgate#mentionRule":
6666+ t.FeedThreadgate_MentionRule = new(FeedThreadgate_MentionRule)
6767+ return json.Unmarshal(b, t.FeedThreadgate_MentionRule)
6868+ case "app.bsky.feed.threadgate#followerRule":
6969+ t.FeedThreadgate_FollowerRule = new(FeedThreadgate_FollowerRule)
7070+ return json.Unmarshal(b, t.FeedThreadgate_FollowerRule)
7171+ case "app.bsky.feed.threadgate#followingRule":
7272+ t.FeedThreadgate_FollowingRule = new(FeedThreadgate_FollowingRule)
7373+ return json.Unmarshal(b, t.FeedThreadgate_FollowingRule)
7474+ case "app.bsky.feed.threadgate#listRule":
7575+ t.FeedThreadgate_ListRule = new(FeedThreadgate_ListRule)
7676+ return json.Unmarshal(b, t.FeedThreadgate_ListRule)
7777+7878+ default:
7979+ return nil
8080+ }
8181+}
8282+8383+func (t *FeedThreadgate_Allow_Elem) MarshalCBOR(w io.Writer) error {
8484+8585+ if t == nil {
8686+ _, err := w.Write(cbg.CborNull)
8787+ return err
8888+ }
8989+ if t.FeedThreadgate_MentionRule != nil {
9090+ return t.FeedThreadgate_MentionRule.MarshalCBOR(w)
9191+ }
9292+ if t.FeedThreadgate_FollowerRule != nil {
9393+ return t.FeedThreadgate_FollowerRule.MarshalCBOR(w)
9494+ }
9595+ if t.FeedThreadgate_FollowingRule != nil {
9696+ return t.FeedThreadgate_FollowingRule.MarshalCBOR(w)
9797+ }
9898+ if t.FeedThreadgate_ListRule != nil {
9999+ return t.FeedThreadgate_ListRule.MarshalCBOR(w)
100100+ }
101101+ return fmt.Errorf("cannot cbor marshal empty enum")
102102+}
103103+func (t *FeedThreadgate_Allow_Elem) UnmarshalCBOR(r io.Reader) error {
104104+ typ, b, err := util.CborTypeExtractReader(r)
105105+ if err != nil {
106106+ return err
107107+ }
108108+109109+ switch typ {
110110+ case "app.bsky.feed.threadgate#mentionRule":
111111+ t.FeedThreadgate_MentionRule = new(FeedThreadgate_MentionRule)
112112+ return t.FeedThreadgate_MentionRule.UnmarshalCBOR(bytes.NewReader(b))
113113+ case "app.bsky.feed.threadgate#followerRule":
114114+ t.FeedThreadgate_FollowerRule = new(FeedThreadgate_FollowerRule)
115115+ return t.FeedThreadgate_FollowerRule.UnmarshalCBOR(bytes.NewReader(b))
116116+ case "app.bsky.feed.threadgate#followingRule":
117117+ t.FeedThreadgate_FollowingRule = new(FeedThreadgate_FollowingRule)
118118+ return t.FeedThreadgate_FollowingRule.UnmarshalCBOR(bytes.NewReader(b))
119119+ case "app.bsky.feed.threadgate#listRule":
120120+ t.FeedThreadgate_ListRule = new(FeedThreadgate_ListRule)
121121+ return t.FeedThreadgate_ListRule.UnmarshalCBOR(bytes.NewReader(b))
122122+123123+ default:
124124+ return nil
125125+ }
126126+}
127127+128128+// FeedThreadgate_FollowerRule is a "followerRule" in the app.bsky.feed.threadgate schema.
129129+//
130130+// Allow replies from actors who follow you.
131131+//
132132+// RECORDTYPE: FeedThreadgate_FollowerRule
133133+type FeedThreadgate_FollowerRule struct {
134134+ LexiconTypeID string `json:"$type,const=app.bsky.feed.threadgate#followerRule" cborgen:"$type,const=app.bsky.feed.threadgate#followerRule"`
135135+}
136136+137137+// FeedThreadgate_FollowingRule is a "followingRule" in the app.bsky.feed.threadgate schema.
138138+//
139139+// Allow replies from actors you follow.
140140+//
141141+// RECORDTYPE: FeedThreadgate_FollowingRule
142142+type FeedThreadgate_FollowingRule struct {
143143+ LexiconTypeID string `json:"$type,const=app.bsky.feed.threadgate#followingRule" cborgen:"$type,const=app.bsky.feed.threadgate#followingRule"`
144144+}
145145+146146+// FeedThreadgate_ListRule is a "listRule" in the app.bsky.feed.threadgate schema.
147147+//
148148+// Allow replies from actors on a list.
149149+//
150150+// RECORDTYPE: FeedThreadgate_ListRule
151151+type FeedThreadgate_ListRule struct {
152152+ LexiconTypeID string `json:"$type,const=app.bsky.feed.threadgate#listRule" cborgen:"$type,const=app.bsky.feed.threadgate#listRule"`
153153+ List string `json:"list" cborgen:"list"`
154154+}
155155+156156+// FeedThreadgate_MentionRule is a "mentionRule" in the app.bsky.feed.threadgate schema.
157157+//
158158+// Allow replies from actors mentioned in your post.
159159+//
160160+// RECORDTYPE: FeedThreadgate_MentionRule
161161+type FeedThreadgate_MentionRule struct {
162162+ LexiconTypeID string `json:"$type,const=app.bsky.feed.threadgate#mentionRule" cborgen:"$type,const=app.bsky.feed.threadgate#mentionRule"`
163163+}
+20
api/bsky/graphblock.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.block
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("app.bsky.graph.block", &GraphBlock{})
1313+} //
1414+// RECORDTYPE: GraphBlock
1515+type GraphBlock struct {
1616+ LexiconTypeID string `json:"$type,const=app.bsky.graph.block" cborgen:"$type,const=app.bsky.graph.block"`
1717+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1818+ // subject: DID of the account to be blocked.
1919+ Subject string `json:"subject" cborgen:"subject"`
2020+}
+110
api/bsky/graphdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.defs
66+77+import (
88+ comatprototypes "github.com/bluesky-social/indigo/api/atproto"
99+ "github.com/bluesky-social/indigo/lex/util"
1010+)
1111+1212+// GraphDefs_ListItemView is a "listItemView" in the app.bsky.graph.defs schema.
1313+type GraphDefs_ListItemView struct {
1414+ Subject *ActorDefs_ProfileView `json:"subject" cborgen:"subject"`
1515+ Uri string `json:"uri" cborgen:"uri"`
1616+}
1717+1818+// GraphDefs_ListView is a "listView" in the app.bsky.graph.defs schema.
1919+//
2020+// RECORDTYPE: GraphDefs_ListView
2121+type GraphDefs_ListView struct {
2222+ LexiconTypeID string `json:"$type,const=app.bsky.graph.defs#listView" cborgen:"$type,const=app.bsky.graph.defs#listView"`
2323+ Avatar *string `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
2424+ Cid string `json:"cid" cborgen:"cid"`
2525+ Creator *ActorDefs_ProfileView `json:"creator" cborgen:"creator"`
2626+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
2727+ DescriptionFacets []*RichtextFacet `json:"descriptionFacets,omitempty" cborgen:"descriptionFacets,omitempty"`
2828+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
2929+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
3030+ ListItemCount *int64 `json:"listItemCount,omitempty" cborgen:"listItemCount,omitempty"`
3131+ Name string `json:"name" cborgen:"name"`
3232+ Purpose *string `json:"purpose" cborgen:"purpose"`
3333+ Uri string `json:"uri" cborgen:"uri"`
3434+ Viewer *GraphDefs_ListViewerState `json:"viewer,omitempty" cborgen:"viewer,omitempty"`
3535+}
3636+3737+// GraphDefs_ListViewBasic is a "listViewBasic" in the app.bsky.graph.defs schema.
3838+type GraphDefs_ListViewBasic struct {
3939+ Avatar *string `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
4040+ Cid string `json:"cid" cborgen:"cid"`
4141+ IndexedAt *string `json:"indexedAt,omitempty" cborgen:"indexedAt,omitempty"`
4242+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
4343+ ListItemCount *int64 `json:"listItemCount,omitempty" cborgen:"listItemCount,omitempty"`
4444+ Name string `json:"name" cborgen:"name"`
4545+ Purpose *string `json:"purpose" cborgen:"purpose"`
4646+ Uri string `json:"uri" cborgen:"uri"`
4747+ Viewer *GraphDefs_ListViewerState `json:"viewer,omitempty" cborgen:"viewer,omitempty"`
4848+}
4949+5050+// GraphDefs_ListViewerState is a "listViewerState" in the app.bsky.graph.defs schema.
5151+type GraphDefs_ListViewerState struct {
5252+ Blocked *string `json:"blocked,omitempty" cborgen:"blocked,omitempty"`
5353+ Muted *bool `json:"muted,omitempty" cborgen:"muted,omitempty"`
5454+}
5555+5656+// GraphDefs_NotFoundActor is a "notFoundActor" in the app.bsky.graph.defs schema.
5757+//
5858+// indicates that a handle or DID could not be resolved
5959+//
6060+// RECORDTYPE: GraphDefs_NotFoundActor
6161+type GraphDefs_NotFoundActor struct {
6262+ LexiconTypeID string `json:"$type,const=app.bsky.graph.defs#notFoundActor" cborgen:"$type,const=app.bsky.graph.defs#notFoundActor"`
6363+ Actor string `json:"actor" cborgen:"actor"`
6464+ NotFound bool `json:"notFound" cborgen:"notFound"`
6565+}
6666+6767+// GraphDefs_Relationship is a "relationship" in the app.bsky.graph.defs schema.
6868+//
6969+// lists the bi-directional graph relationships between one actor (not indicated in the object), and the target actors (the DID included in the object)
7070+//
7171+// RECORDTYPE: GraphDefs_Relationship
7272+type GraphDefs_Relationship struct {
7373+ LexiconTypeID string `json:"$type,const=app.bsky.graph.defs#relationship" cborgen:"$type,const=app.bsky.graph.defs#relationship"`
7474+ Did string `json:"did" cborgen:"did"`
7575+ // followedBy: if the actor is followed by this DID, contains the AT-URI of the follow record
7676+ FollowedBy *string `json:"followedBy,omitempty" cborgen:"followedBy,omitempty"`
7777+ // following: if the actor follows this DID, this is the AT-URI of the follow record
7878+ Following *string `json:"following,omitempty" cborgen:"following,omitempty"`
7979+}
8080+8181+// GraphDefs_StarterPackView is a "starterPackView" in the app.bsky.graph.defs schema.
8282+type GraphDefs_StarterPackView struct {
8383+ Cid string `json:"cid" cborgen:"cid"`
8484+ Creator *ActorDefs_ProfileViewBasic `json:"creator" cborgen:"creator"`
8585+ Feeds []*FeedDefs_GeneratorView `json:"feeds,omitempty" cborgen:"feeds,omitempty"`
8686+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
8787+ JoinedAllTimeCount *int64 `json:"joinedAllTimeCount,omitempty" cborgen:"joinedAllTimeCount,omitempty"`
8888+ JoinedWeekCount *int64 `json:"joinedWeekCount,omitempty" cborgen:"joinedWeekCount,omitempty"`
8989+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
9090+ List *GraphDefs_ListViewBasic `json:"list,omitempty" cborgen:"list,omitempty"`
9191+ ListItemsSample []*GraphDefs_ListItemView `json:"listItemsSample,omitempty" cborgen:"listItemsSample,omitempty"`
9292+ Record *util.LexiconTypeDecoder `json:"record" cborgen:"record"`
9393+ Uri string `json:"uri" cborgen:"uri"`
9494+}
9595+9696+// GraphDefs_StarterPackViewBasic is a "starterPackViewBasic" in the app.bsky.graph.defs schema.
9797+//
9898+// RECORDTYPE: GraphDefs_StarterPackViewBasic
9999+type GraphDefs_StarterPackViewBasic struct {
100100+ LexiconTypeID string `json:"$type,const=app.bsky.graph.defs#starterPackViewBasic" cborgen:"$type,const=app.bsky.graph.defs#starterPackViewBasic"`
101101+ Cid string `json:"cid" cborgen:"cid"`
102102+ Creator *ActorDefs_ProfileViewBasic `json:"creator" cborgen:"creator"`
103103+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
104104+ JoinedAllTimeCount *int64 `json:"joinedAllTimeCount,omitempty" cborgen:"joinedAllTimeCount,omitempty"`
105105+ JoinedWeekCount *int64 `json:"joinedWeekCount,omitempty" cborgen:"joinedWeekCount,omitempty"`
106106+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
107107+ ListItemCount *int64 `json:"listItemCount,omitempty" cborgen:"listItemCount,omitempty"`
108108+ Record *util.LexiconTypeDecoder `json:"record" cborgen:"record"`
109109+ Uri string `json:"uri" cborgen:"uri"`
110110+}
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.listblock
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("app.bsky.graph.listblock", &GraphListblock{})
1313+} //
1414+// RECORDTYPE: GraphListblock
1515+type GraphListblock struct {
1616+ LexiconTypeID string `json:"$type,const=app.bsky.graph.listblock" cborgen:"$type,const=app.bsky.graph.listblock"`
1717+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1818+ // subject: Reference (AT-URI) to the mod list record.
1919+ Subject string `json:"subject" cborgen:"subject"`
2020+}
+22
api/bsky/graphlistitem.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.listitem
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("app.bsky.graph.listitem", &GraphListitem{})
1313+} //
1414+// RECORDTYPE: GraphListitem
1515+type GraphListitem struct {
1616+ LexiconTypeID string `json:"$type,const=app.bsky.graph.listitem" cborgen:"$type,const=app.bsky.graph.listitem"`
1717+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1818+ // list: Reference (AT-URI) to the list record (app.bsky.graph.list).
1919+ List string `json:"list" cborgen:"list"`
2020+ // subject: The account which is included on the list.
2121+ Subject string `json:"subject" cborgen:"subject"`
2222+}
+25
api/bsky/graphmuteActor.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.muteActor
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// GraphMuteActor_Input is the input argument to a app.bsky.graph.muteActor call.
1414+type GraphMuteActor_Input struct {
1515+ Actor string `json:"actor" cborgen:"actor"`
1616+}
1717+1818+// GraphMuteActor calls the XRPC method "app.bsky.graph.muteActor".
1919+func GraphMuteActor(ctx context.Context, c *xrpc.Client, input *GraphMuteActor_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.graph.muteActor", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+25
api/bsky/graphmuteActorList.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.muteActorList
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// GraphMuteActorList_Input is the input argument to a app.bsky.graph.muteActorList call.
1414+type GraphMuteActorList_Input struct {
1515+ List string `json:"list" cborgen:"list"`
1616+}
1717+1818+// GraphMuteActorList calls the XRPC method "app.bsky.graph.muteActorList".
1919+func GraphMuteActorList(ctx context.Context, c *xrpc.Client, input *GraphMuteActorList_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.graph.muteActorList", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+25
api/bsky/graphmuteThread.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.muteThread
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// GraphMuteThread_Input is the input argument to a app.bsky.graph.muteThread call.
1414+type GraphMuteThread_Input struct {
1515+ Root string `json:"root" cborgen:"root"`
1616+}
1717+1818+// GraphMuteThread calls the XRPC method "app.bsky.graph.muteThread".
1919+func GraphMuteThread(ctx context.Context, c *xrpc.Client, input *GraphMuteThread_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.graph.muteThread", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+35
api/bsky/graphsearchStarterPacks.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.searchStarterPacks
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// GraphSearchStarterPacks_Output is the output of a app.bsky.graph.searchStarterPacks call.
1414+type GraphSearchStarterPacks_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ StarterPacks []*GraphDefs_StarterPackViewBasic `json:"starterPacks" cborgen:"starterPacks"`
1717+}
1818+1919+// GraphSearchStarterPacks calls the XRPC method "app.bsky.graph.searchStarterPacks".
2020+//
2121+// q: Search query string. Syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended.
2222+func GraphSearchStarterPacks(ctx context.Context, c *xrpc.Client, cursor string, limit int64, q string) (*GraphSearchStarterPacks_Output, error) {
2323+ var out GraphSearchStarterPacks_Output
2424+2525+ params := map[string]interface{}{
2626+ "cursor": cursor,
2727+ "limit": limit,
2828+ "q": q,
2929+ }
3030+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.graph.searchStarterPacks", params, nil, &out); err != nil {
3131+ return nil, err
3232+ }
3333+3434+ return &out, nil
3535+}
+30
api/bsky/graphstarterpack.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.starterpack
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("app.bsky.graph.starterpack", &GraphStarterpack{})
1313+} //
1414+// RECORDTYPE: GraphStarterpack
1515+type GraphStarterpack struct {
1616+ LexiconTypeID string `json:"$type,const=app.bsky.graph.starterpack" cborgen:"$type,const=app.bsky.graph.starterpack"`
1717+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1818+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
1919+ DescriptionFacets []*RichtextFacet `json:"descriptionFacets,omitempty" cborgen:"descriptionFacets,omitempty"`
2020+ Feeds []*GraphStarterpack_FeedItem `json:"feeds,omitempty" cborgen:"feeds,omitempty"`
2121+ // list: Reference (AT-URI) to the list record.
2222+ List string `json:"list" cborgen:"list"`
2323+ // name: Display name for starter pack; can not be empty.
2424+ Name string `json:"name" cborgen:"name"`
2525+}
2626+2727+// GraphStarterpack_FeedItem is a "feedItem" in the app.bsky.graph.starterpack schema.
2828+type GraphStarterpack_FeedItem struct {
2929+ Uri string `json:"uri" cborgen:"uri"`
3030+}
+25
api/bsky/graphunmuteActor.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.unmuteActor
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// GraphUnmuteActor_Input is the input argument to a app.bsky.graph.unmuteActor call.
1414+type GraphUnmuteActor_Input struct {
1515+ Actor string `json:"actor" cborgen:"actor"`
1616+}
1717+1818+// GraphUnmuteActor calls the XRPC method "app.bsky.graph.unmuteActor".
1919+func GraphUnmuteActor(ctx context.Context, c *xrpc.Client, input *GraphUnmuteActor_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.graph.unmuteActor", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+25
api/bsky/graphunmuteActorList.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.unmuteActorList
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// GraphUnmuteActorList_Input is the input argument to a app.bsky.graph.unmuteActorList call.
1414+type GraphUnmuteActorList_Input struct {
1515+ List string `json:"list" cborgen:"list"`
1616+}
1717+1818+// GraphUnmuteActorList calls the XRPC method "app.bsky.graph.unmuteActorList".
1919+func GraphUnmuteActorList(ctx context.Context, c *xrpc.Client, input *GraphUnmuteActorList_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.graph.unmuteActorList", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+25
api/bsky/graphunmuteThread.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.unmuteThread
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// GraphUnmuteThread_Input is the input argument to a app.bsky.graph.unmuteThread call.
1414+type GraphUnmuteThread_Input struct {
1515+ Root string `json:"root" cborgen:"root"`
1616+}
1717+1818+// GraphUnmuteThread calls the XRPC method "app.bsky.graph.unmuteThread".
1919+func GraphUnmuteThread(ctx context.Context, c *xrpc.Client, input *GraphUnmuteThread_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.graph.unmuteThread", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+25
api/bsky/graphverification.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.verification
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("app.bsky.graph.verification", &GraphVerification{})
1313+} //
1414+// RECORDTYPE: GraphVerification
1515+type GraphVerification struct {
1616+ LexiconTypeID string `json:"$type,const=app.bsky.graph.verification" cborgen:"$type,const=app.bsky.graph.verification"`
1717+ // createdAt: Date of when the verification was created.
1818+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1919+ // displayName: Display name of the subject the verification applies to at the moment of verifying, which might not be the same at the time of viewing. The verification is only valid if the current displayName matches the one at the time of verifying.
2020+ DisplayName string `json:"displayName" cborgen:"displayName"`
2121+ // handle: Handle of the subject the verification applies to at the moment of verifying, which might not be the same at the time of viewing. The verification is only valid if the current handle matches the one at the time of verifying.
2222+ Handle string `json:"handle" cborgen:"handle"`
2323+ // subject: DID of the subject the verification applies to.
2424+ Subject string `json:"subject" cborgen:"subject"`
2525+}
+57
api/bsky/labelerdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.labeler.defs
66+77+import (
88+ comatprototypes "github.com/bluesky-social/indigo/api/atproto"
99+)
1010+1111+// LabelerDefs_LabelerPolicies is a "labelerPolicies" in the app.bsky.labeler.defs schema.
1212+type LabelerDefs_LabelerPolicies struct {
1313+ // labelValueDefinitions: Label values created by this labeler and scoped exclusively to it. Labels defined here will override global label definitions for this labeler.
1414+ LabelValueDefinitions []*comatprototypes.LabelDefs_LabelValueDefinition `json:"labelValueDefinitions,omitempty" cborgen:"labelValueDefinitions,omitempty"`
1515+ // labelValues: The label values which this labeler publishes. May include global or custom labels.
1616+ LabelValues []*string `json:"labelValues" cborgen:"labelValues"`
1717+}
1818+1919+// LabelerDefs_LabelerView is a "labelerView" in the app.bsky.labeler.defs schema.
2020+//
2121+// RECORDTYPE: LabelerDefs_LabelerView
2222+type LabelerDefs_LabelerView struct {
2323+ LexiconTypeID string `json:"$type,const=app.bsky.labeler.defs#labelerView" cborgen:"$type,const=app.bsky.labeler.defs#labelerView"`
2424+ Cid string `json:"cid" cborgen:"cid"`
2525+ Creator *ActorDefs_ProfileView `json:"creator" cborgen:"creator"`
2626+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
2727+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
2828+ LikeCount *int64 `json:"likeCount,omitempty" cborgen:"likeCount,omitempty"`
2929+ Uri string `json:"uri" cborgen:"uri"`
3030+ Viewer *LabelerDefs_LabelerViewerState `json:"viewer,omitempty" cborgen:"viewer,omitempty"`
3131+}
3232+3333+// LabelerDefs_LabelerViewDetailed is a "labelerViewDetailed" in the app.bsky.labeler.defs schema.
3434+//
3535+// RECORDTYPE: LabelerDefs_LabelerViewDetailed
3636+type LabelerDefs_LabelerViewDetailed struct {
3737+ LexiconTypeID string `json:"$type,const=app.bsky.labeler.defs#labelerViewDetailed" cborgen:"$type,const=app.bsky.labeler.defs#labelerViewDetailed"`
3838+ Cid string `json:"cid" cborgen:"cid"`
3939+ Creator *ActorDefs_ProfileView `json:"creator" cborgen:"creator"`
4040+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
4141+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
4242+ LikeCount *int64 `json:"likeCount,omitempty" cborgen:"likeCount,omitempty"`
4343+ Policies *LabelerDefs_LabelerPolicies `json:"policies" cborgen:"policies"`
4444+ // reasonTypes: The set of report reason 'codes' which are in-scope for this service to review and action. These usually align to policy categories. If not defined (distinct from empty array), all reason types are allowed.
4545+ ReasonTypes []*string `json:"reasonTypes,omitempty" cborgen:"reasonTypes,omitempty"`
4646+ // subjectCollections: Set of record types (collection NSIDs) which can be reported to this service. If not defined (distinct from empty array), default is any record type.
4747+ SubjectCollections []string `json:"subjectCollections,omitempty" cborgen:"subjectCollections,omitempty"`
4848+ // subjectTypes: The set of subject types (account, record, etc) this service accepts reports on.
4949+ SubjectTypes []*string `json:"subjectTypes,omitempty" cborgen:"subjectTypes,omitempty"`
5050+ Uri string `json:"uri" cborgen:"uri"`
5151+ Viewer *LabelerDefs_LabelerViewerState `json:"viewer,omitempty" cborgen:"viewer,omitempty"`
5252+}
5353+5454+// LabelerDefs_LabelerViewerState is a "labelerViewerState" in the app.bsky.labeler.defs schema.
5555+type LabelerDefs_LabelerViewerState struct {
5656+ Like *string `json:"like,omitempty" cborgen:"like,omitempty"`
5757+}
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.labeler.service
66+77+import (
88+ "bytes"
99+ "encoding/json"
1010+ "fmt"
1111+ "io"
1212+1313+ comatprototypes "github.com/bluesky-social/indigo/api/atproto"
1414+ "github.com/bluesky-social/indigo/lex/util"
1515+ cbg "github.com/whyrusleeping/cbor-gen"
1616+)
1717+1818+func init() {
1919+ util.RegisterType("app.bsky.labeler.service", &LabelerService{})
2020+} //
2121+// RECORDTYPE: LabelerService
2222+type LabelerService struct {
2323+ LexiconTypeID string `json:"$type,const=app.bsky.labeler.service" cborgen:"$type,const=app.bsky.labeler.service"`
2424+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
2525+ Labels *LabelerService_Labels `json:"labels,omitempty" cborgen:"labels,omitempty"`
2626+ Policies *LabelerDefs_LabelerPolicies `json:"policies" cborgen:"policies"`
2727+ // reasonTypes: The set of report reason 'codes' which are in-scope for this service to review and action. These usually align to policy categories. If not defined (distinct from empty array), all reason types are allowed.
2828+ ReasonTypes []*string `json:"reasonTypes,omitempty" cborgen:"reasonTypes,omitempty"`
2929+ // subjectCollections: Set of record types (collection NSIDs) which can be reported to this service. If not defined (distinct from empty array), default is any record type.
3030+ SubjectCollections []string `json:"subjectCollections,omitempty" cborgen:"subjectCollections,omitempty"`
3131+ // subjectTypes: The set of subject types (account, record, etc) this service accepts reports on.
3232+ SubjectTypes []*string `json:"subjectTypes,omitempty" cborgen:"subjectTypes,omitempty"`
3333+}
3434+3535+type LabelerService_Labels struct {
3636+ LabelDefs_SelfLabels *comatprototypes.LabelDefs_SelfLabels
3737+}
3838+3939+func (t *LabelerService_Labels) MarshalJSON() ([]byte, error) {
4040+ if t.LabelDefs_SelfLabels != nil {
4141+ t.LabelDefs_SelfLabels.LexiconTypeID = "com.atproto.label.defs#selfLabels"
4242+ return json.Marshal(t.LabelDefs_SelfLabels)
4343+ }
4444+ return nil, fmt.Errorf("cannot marshal empty enum")
4545+}
4646+func (t *LabelerService_Labels) UnmarshalJSON(b []byte) error {
4747+ typ, err := util.TypeExtract(b)
4848+ if err != nil {
4949+ return err
5050+ }
5151+5252+ switch typ {
5353+ case "com.atproto.label.defs#selfLabels":
5454+ t.LabelDefs_SelfLabels = new(comatprototypes.LabelDefs_SelfLabels)
5555+ return json.Unmarshal(b, t.LabelDefs_SelfLabels)
5656+5757+ default:
5858+ return nil
5959+ }
6060+}
6161+6262+func (t *LabelerService_Labels) MarshalCBOR(w io.Writer) error {
6363+6464+ if t == nil {
6565+ _, err := w.Write(cbg.CborNull)
6666+ return err
6767+ }
6868+ if t.LabelDefs_SelfLabels != nil {
6969+ return t.LabelDefs_SelfLabels.MarshalCBOR(w)
7070+ }
7171+ return fmt.Errorf("cannot cbor marshal empty enum")
7272+}
7373+func (t *LabelerService_Labels) UnmarshalCBOR(r io.Reader) error {
7474+ typ, b, err := util.CborTypeExtractReader(r)
7575+ if err != nil {
7676+ return err
7777+ }
7878+7979+ switch typ {
8080+ case "com.atproto.label.defs#selfLabels":
8181+ t.LabelDefs_SelfLabels = new(comatprototypes.LabelDefs_SelfLabels)
8282+ return t.LabelDefs_SelfLabels.UnmarshalCBOR(bytes.NewReader(b))
8383+8484+ default:
8585+ return nil
8686+ }
8787+}
+9
api/bsky/notificationdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.notification.defs
66+77+// NotificationDefs_RecordDeleted is a "recordDeleted" in the app.bsky.notification.defs schema.
88+type NotificationDefs_RecordDeleted struct {
99+}
+31
api/bsky/notificationgetUnreadCount.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.notification.getUnreadCount
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// NotificationGetUnreadCount_Output is the output of a app.bsky.notification.getUnreadCount call.
1414+type NotificationGetUnreadCount_Output struct {
1515+ Count int64 `json:"count" cborgen:"count"`
1616+}
1717+1818+// NotificationGetUnreadCount calls the XRPC method "app.bsky.notification.getUnreadCount".
1919+func NotificationGetUnreadCount(ctx context.Context, c *xrpc.Client, priority bool, seenAt string) (*NotificationGetUnreadCount_Output, error) {
2020+ var out NotificationGetUnreadCount_Output
2121+2222+ params := map[string]interface{}{
2323+ "priority": priority,
2424+ "seenAt": seenAt,
2525+ }
2626+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.notification.getUnreadCount", params, nil, &out); err != nil {
2727+ return nil, err
2828+ }
2929+3030+ return &out, nil
3131+}
+55
api/bsky/notificationlistNotifications.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.notification.listNotifications
66+77+import (
88+ "context"
99+1010+ comatprototypes "github.com/bluesky-social/indigo/api/atproto"
1111+ "github.com/bluesky-social/indigo/lex/util"
1212+ "github.com/bluesky-social/indigo/xrpc"
1313+)
1414+1515+// NotificationListNotifications_Notification is a "notification" in the app.bsky.notification.listNotifications schema.
1616+type NotificationListNotifications_Notification struct {
1717+ Author *ActorDefs_ProfileView `json:"author" cborgen:"author"`
1818+ Cid string `json:"cid" cborgen:"cid"`
1919+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
2020+ IsRead bool `json:"isRead" cborgen:"isRead"`
2121+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
2222+ // reason: Expected values are 'like', 'repost', 'follow', 'mention', 'reply', 'quote', 'starterpack-joined', 'verified', and 'unverified'.
2323+ Reason string `json:"reason" cborgen:"reason"`
2424+ ReasonSubject *string `json:"reasonSubject,omitempty" cborgen:"reasonSubject,omitempty"`
2525+ Record *util.LexiconTypeDecoder `json:"record" cborgen:"record"`
2626+ Uri string `json:"uri" cborgen:"uri"`
2727+}
2828+2929+// NotificationListNotifications_Output is the output of a app.bsky.notification.listNotifications call.
3030+type NotificationListNotifications_Output struct {
3131+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
3232+ Notifications []*NotificationListNotifications_Notification `json:"notifications" cborgen:"notifications"`
3333+ Priority *bool `json:"priority,omitempty" cborgen:"priority,omitempty"`
3434+ SeenAt *string `json:"seenAt,omitempty" cborgen:"seenAt,omitempty"`
3535+}
3636+3737+// NotificationListNotifications calls the XRPC method "app.bsky.notification.listNotifications".
3838+//
3939+// reasons: Notification reasons to include in response.
4040+func NotificationListNotifications(ctx context.Context, c *xrpc.Client, cursor string, limit int64, priority bool, reasons []string, seenAt string) (*NotificationListNotifications_Output, error) {
4141+ var out NotificationListNotifications_Output
4242+4343+ params := map[string]interface{}{
4444+ "cursor": cursor,
4545+ "limit": limit,
4646+ "priority": priority,
4747+ "reasons": reasons,
4848+ "seenAt": seenAt,
4949+ }
5050+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.notification.listNotifications", params, nil, &out); err != nil {
5151+ return nil, err
5252+ }
5353+5454+ return &out, nil
5555+}
+25
api/bsky/notificationputPreferences.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.notification.putPreferences
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// NotificationPutPreferences_Input is the input argument to a app.bsky.notification.putPreferences call.
1414+type NotificationPutPreferences_Input struct {
1515+ Priority bool `json:"priority" cborgen:"priority"`
1616+}
1717+1818+// NotificationPutPreferences calls the XRPC method "app.bsky.notification.putPreferences".
1919+func NotificationPutPreferences(ctx context.Context, c *xrpc.Client, input *NotificationPutPreferences_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.notification.putPreferences", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+28
api/bsky/notificationregisterPush.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.notification.registerPush
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// NotificationRegisterPush_Input is the input argument to a app.bsky.notification.registerPush call.
1414+type NotificationRegisterPush_Input struct {
1515+ AppId string `json:"appId" cborgen:"appId"`
1616+ Platform string `json:"platform" cborgen:"platform"`
1717+ ServiceDid string `json:"serviceDid" cborgen:"serviceDid"`
1818+ Token string `json:"token" cborgen:"token"`
1919+}
2020+2121+// NotificationRegisterPush calls the XRPC method "app.bsky.notification.registerPush".
2222+func NotificationRegisterPush(ctx context.Context, c *xrpc.Client, input *NotificationRegisterPush_Input) error {
2323+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.notification.registerPush", nil, input, nil); err != nil {
2424+ return err
2525+ }
2626+2727+ return nil
2828+}
+25
api/bsky/notificationupdateSeen.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.notification.updateSeen
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// NotificationUpdateSeen_Input is the input argument to a app.bsky.notification.updateSeen call.
1414+type NotificationUpdateSeen_Input struct {
1515+ SeenAt string `json:"seenAt" cborgen:"seenAt"`
1616+}
1717+1818+// NotificationUpdateSeen calls the XRPC method "app.bsky.notification.updateSeen".
1919+func NotificationUpdateSeen(ctx context.Context, c *xrpc.Client, input *NotificationUpdateSeen_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "app.bsky.notification.updateSeen", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+143
api/bsky/richtextfacet.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.richtext.facet
66+77+import (
88+ "bytes"
99+ "encoding/json"
1010+ "fmt"
1111+ "io"
1212+1313+ "github.com/bluesky-social/indigo/lex/util"
1414+ cbg "github.com/whyrusleeping/cbor-gen"
1515+)
1616+1717+// RichtextFacet is a "main" in the app.bsky.richtext.facet schema.
1818+//
1919+// Annotation of a sub-string within rich text.
2020+type RichtextFacet struct {
2121+ Features []*RichtextFacet_Features_Elem `json:"features" cborgen:"features"`
2222+ Index *RichtextFacet_ByteSlice `json:"index" cborgen:"index"`
2323+}
2424+2525+// RichtextFacet_ByteSlice is a "byteSlice" in the app.bsky.richtext.facet schema.
2626+//
2727+// Specifies the sub-string range a facet feature applies to. Start index is inclusive, end index is exclusive. Indices are zero-indexed, counting bytes of the UTF-8 encoded text. NOTE: some languages, like Javascript, use UTF-16 or Unicode codepoints for string slice indexing; in these languages, convert to byte arrays before working with facets.
2828+type RichtextFacet_ByteSlice struct {
2929+ ByteEnd int64 `json:"byteEnd" cborgen:"byteEnd"`
3030+ ByteStart int64 `json:"byteStart" cborgen:"byteStart"`
3131+}
3232+3333+type RichtextFacet_Features_Elem struct {
3434+ RichtextFacet_Mention *RichtextFacet_Mention
3535+ RichtextFacet_Link *RichtextFacet_Link
3636+ RichtextFacet_Tag *RichtextFacet_Tag
3737+}
3838+3939+func (t *RichtextFacet_Features_Elem) MarshalJSON() ([]byte, error) {
4040+ if t.RichtextFacet_Mention != nil {
4141+ t.RichtextFacet_Mention.LexiconTypeID = "app.bsky.richtext.facet#mention"
4242+ return json.Marshal(t.RichtextFacet_Mention)
4343+ }
4444+ if t.RichtextFacet_Link != nil {
4545+ t.RichtextFacet_Link.LexiconTypeID = "app.bsky.richtext.facet#link"
4646+ return json.Marshal(t.RichtextFacet_Link)
4747+ }
4848+ if t.RichtextFacet_Tag != nil {
4949+ t.RichtextFacet_Tag.LexiconTypeID = "app.bsky.richtext.facet#tag"
5050+ return json.Marshal(t.RichtextFacet_Tag)
5151+ }
5252+ return nil, fmt.Errorf("cannot marshal empty enum")
5353+}
5454+func (t *RichtextFacet_Features_Elem) UnmarshalJSON(b []byte) error {
5555+ typ, err := util.TypeExtract(b)
5656+ if err != nil {
5757+ return err
5858+ }
5959+6060+ switch typ {
6161+ case "app.bsky.richtext.facet#mention":
6262+ t.RichtextFacet_Mention = new(RichtextFacet_Mention)
6363+ return json.Unmarshal(b, t.RichtextFacet_Mention)
6464+ case "app.bsky.richtext.facet#link":
6565+ t.RichtextFacet_Link = new(RichtextFacet_Link)
6666+ return json.Unmarshal(b, t.RichtextFacet_Link)
6767+ case "app.bsky.richtext.facet#tag":
6868+ t.RichtextFacet_Tag = new(RichtextFacet_Tag)
6969+ return json.Unmarshal(b, t.RichtextFacet_Tag)
7070+7171+ default:
7272+ return nil
7373+ }
7474+}
7575+7676+func (t *RichtextFacet_Features_Elem) MarshalCBOR(w io.Writer) error {
7777+7878+ if t == nil {
7979+ _, err := w.Write(cbg.CborNull)
8080+ return err
8181+ }
8282+ if t.RichtextFacet_Mention != nil {
8383+ return t.RichtextFacet_Mention.MarshalCBOR(w)
8484+ }
8585+ if t.RichtextFacet_Link != nil {
8686+ return t.RichtextFacet_Link.MarshalCBOR(w)
8787+ }
8888+ if t.RichtextFacet_Tag != nil {
8989+ return t.RichtextFacet_Tag.MarshalCBOR(w)
9090+ }
9191+ return fmt.Errorf("cannot cbor marshal empty enum")
9292+}
9393+func (t *RichtextFacet_Features_Elem) UnmarshalCBOR(r io.Reader) error {
9494+ typ, b, err := util.CborTypeExtractReader(r)
9595+ if err != nil {
9696+ return err
9797+ }
9898+9999+ switch typ {
100100+ case "app.bsky.richtext.facet#mention":
101101+ t.RichtextFacet_Mention = new(RichtextFacet_Mention)
102102+ return t.RichtextFacet_Mention.UnmarshalCBOR(bytes.NewReader(b))
103103+ case "app.bsky.richtext.facet#link":
104104+ t.RichtextFacet_Link = new(RichtextFacet_Link)
105105+ return t.RichtextFacet_Link.UnmarshalCBOR(bytes.NewReader(b))
106106+ case "app.bsky.richtext.facet#tag":
107107+ t.RichtextFacet_Tag = new(RichtextFacet_Tag)
108108+ return t.RichtextFacet_Tag.UnmarshalCBOR(bytes.NewReader(b))
109109+110110+ default:
111111+ return nil
112112+ }
113113+}
114114+115115+// RichtextFacet_Link is a "link" in the app.bsky.richtext.facet schema.
116116+//
117117+// Facet feature for a URL. The text URL may have been simplified or truncated, but the facet reference should be a complete URL.
118118+//
119119+// RECORDTYPE: RichtextFacet_Link
120120+type RichtextFacet_Link struct {
121121+ LexiconTypeID string `json:"$type,const=app.bsky.richtext.facet#link" cborgen:"$type,const=app.bsky.richtext.facet#link"`
122122+ Uri string `json:"uri" cborgen:"uri"`
123123+}
124124+125125+// RichtextFacet_Mention is a "mention" in the app.bsky.richtext.facet schema.
126126+//
127127+// Facet feature for mention of another account. The text is usually a handle, including a '@' prefix, but the facet reference is a DID.
128128+//
129129+// RECORDTYPE: RichtextFacet_Mention
130130+type RichtextFacet_Mention struct {
131131+ LexiconTypeID string `json:"$type,const=app.bsky.richtext.facet#mention" cborgen:"$type,const=app.bsky.richtext.facet#mention"`
132132+ Did string `json:"did" cborgen:"did"`
133133+}
134134+135135+// RichtextFacet_Tag is a "tag" in the app.bsky.richtext.facet schema.
136136+//
137137+// Facet feature for a hashtag. The text usually includes a '#' prefix, but the facet reference should not (except in the case of 'double hash tags').
138138+//
139139+// RECORDTYPE: RichtextFacet_Tag
140140+type RichtextFacet_Tag struct {
141141+ LexiconTypeID string `json:"$type,const=app.bsky.richtext.facet#tag" cborgen:"$type,const=app.bsky.richtext.facet#tag"`
142142+ Tag string `json:"tag" cborgen:"tag"`
143143+}
+52
api/bsky/unspecceddefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.defs
66+77+// UnspeccedDefs_SkeletonSearchActor is a "skeletonSearchActor" in the app.bsky.unspecced.defs schema.
88+type UnspeccedDefs_SkeletonSearchActor struct {
99+ Did string `json:"did" cborgen:"did"`
1010+}
1111+1212+// UnspeccedDefs_SkeletonSearchPost is a "skeletonSearchPost" in the app.bsky.unspecced.defs schema.
1313+type UnspeccedDefs_SkeletonSearchPost struct {
1414+ Uri string `json:"uri" cborgen:"uri"`
1515+}
1616+1717+// UnspeccedDefs_SkeletonSearchStarterPack is a "skeletonSearchStarterPack" in the app.bsky.unspecced.defs schema.
1818+type UnspeccedDefs_SkeletonSearchStarterPack struct {
1919+ Uri string `json:"uri" cborgen:"uri"`
2020+}
2121+2222+// UnspeccedDefs_SkeletonTrend is a "skeletonTrend" in the app.bsky.unspecced.defs schema.
2323+type UnspeccedDefs_SkeletonTrend struct {
2424+ Category *string `json:"category,omitempty" cborgen:"category,omitempty"`
2525+ Dids []string `json:"dids" cborgen:"dids"`
2626+ DisplayName string `json:"displayName" cborgen:"displayName"`
2727+ Link string `json:"link" cborgen:"link"`
2828+ PostCount int64 `json:"postCount" cborgen:"postCount"`
2929+ StartedAt string `json:"startedAt" cborgen:"startedAt"`
3030+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
3131+ Topic string `json:"topic" cborgen:"topic"`
3232+}
3333+3434+// UnspeccedDefs_TrendView is a "trendView" in the app.bsky.unspecced.defs schema.
3535+type UnspeccedDefs_TrendView struct {
3636+ Actors []*ActorDefs_ProfileViewBasic `json:"actors" cborgen:"actors"`
3737+ Category *string `json:"category,omitempty" cborgen:"category,omitempty"`
3838+ DisplayName string `json:"displayName" cborgen:"displayName"`
3939+ Link string `json:"link" cborgen:"link"`
4040+ PostCount int64 `json:"postCount" cborgen:"postCount"`
4141+ StartedAt string `json:"startedAt" cborgen:"startedAt"`
4242+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
4343+ Topic string `json:"topic" cborgen:"topic"`
4444+}
4545+4646+// UnspeccedDefs_TrendingTopic is a "trendingTopic" in the app.bsky.unspecced.defs schema.
4747+type UnspeccedDefs_TrendingTopic struct {
4848+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
4949+ DisplayName *string `json:"displayName,omitempty" cborgen:"displayName,omitempty"`
5050+ Link string `json:"link" cborgen:"link"`
5151+ Topic string `json:"topic" cborgen:"topic"`
5252+}
+26
api/bsky/unspeccedgetConfig.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getConfig
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetConfig_Output is the output of a app.bsky.unspecced.getConfig call.
1414+type UnspeccedGetConfig_Output struct {
1515+ CheckEmailConfirmed *bool `json:"checkEmailConfirmed,omitempty" cborgen:"checkEmailConfirmed,omitempty"`
1616+}
1717+1818+// UnspeccedGetConfig calls the XRPC method "app.bsky.unspecced.getConfig".
1919+func UnspeccedGetConfig(ctx context.Context, c *xrpc.Client) (*UnspeccedGetConfig_Output, error) {
2020+ var out UnspeccedGetConfig_Output
2121+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getConfig", nil, nil, &out); err != nil {
2222+ return nil, err
2323+ }
2424+2525+ return &out, nil
2626+}
+33
api/bsky/unspeccedgetPopularFeedGenerators.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getPopularFeedGenerators
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetPopularFeedGenerators_Output is the output of a app.bsky.unspecced.getPopularFeedGenerators call.
1414+type UnspeccedGetPopularFeedGenerators_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Feeds []*FeedDefs_GeneratorView `json:"feeds" cborgen:"feeds"`
1717+}
1818+1919+// UnspeccedGetPopularFeedGenerators calls the XRPC method "app.bsky.unspecced.getPopularFeedGenerators".
2020+func UnspeccedGetPopularFeedGenerators(ctx context.Context, c *xrpc.Client, cursor string, limit int64, query string) (*UnspeccedGetPopularFeedGenerators_Output, error) {
2121+ var out UnspeccedGetPopularFeedGenerators_Output
2222+2323+ params := map[string]interface{}{
2424+ "cursor": cursor,
2525+ "limit": limit,
2626+ "query": query,
2727+ }
2828+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getPopularFeedGenerators", params, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+30
api/bsky/unspeccedgetSuggestedFeeds.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getSuggestedFeeds
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetSuggestedFeeds_Output is the output of a app.bsky.unspecced.getSuggestedFeeds call.
1414+type UnspeccedGetSuggestedFeeds_Output struct {
1515+ Feeds []*FeedDefs_GeneratorView `json:"feeds" cborgen:"feeds"`
1616+}
1717+1818+// UnspeccedGetSuggestedFeeds calls the XRPC method "app.bsky.unspecced.getSuggestedFeeds".
1919+func UnspeccedGetSuggestedFeeds(ctx context.Context, c *xrpc.Client, limit int64) (*UnspeccedGetSuggestedFeeds_Output, error) {
2020+ var out UnspeccedGetSuggestedFeeds_Output
2121+2222+ params := map[string]interface{}{
2323+ "limit": limit,
2424+ }
2525+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getSuggestedFeeds", params, nil, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+33
api/bsky/unspeccedgetSuggestedFeedsSkeleton.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getSuggestedFeedsSkeleton
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetSuggestedFeedsSkeleton_Output is the output of a app.bsky.unspecced.getSuggestedFeedsSkeleton call.
1414+type UnspeccedGetSuggestedFeedsSkeleton_Output struct {
1515+ Feeds []string `json:"feeds" cborgen:"feeds"`
1616+}
1717+1818+// UnspeccedGetSuggestedFeedsSkeleton calls the XRPC method "app.bsky.unspecced.getSuggestedFeedsSkeleton".
1919+//
2020+// viewer: DID of the account making the request (not included for public/unauthenticated queries).
2121+func UnspeccedGetSuggestedFeedsSkeleton(ctx context.Context, c *xrpc.Client, limit int64, viewer string) (*UnspeccedGetSuggestedFeedsSkeleton_Output, error) {
2222+ var out UnspeccedGetSuggestedFeedsSkeleton_Output
2323+2424+ params := map[string]interface{}{
2525+ "limit": limit,
2626+ "viewer": viewer,
2727+ }
2828+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getSuggestedFeedsSkeleton", params, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+30
api/bsky/unspeccedgetSuggestedStarterPacks.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getSuggestedStarterPacks
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetSuggestedStarterPacks_Output is the output of a app.bsky.unspecced.getSuggestedStarterPacks call.
1414+type UnspeccedGetSuggestedStarterPacks_Output struct {
1515+ StarterPacks []*GraphDefs_StarterPackView `json:"starterPacks" cborgen:"starterPacks"`
1616+}
1717+1818+// UnspeccedGetSuggestedStarterPacks calls the XRPC method "app.bsky.unspecced.getSuggestedStarterPacks".
1919+func UnspeccedGetSuggestedStarterPacks(ctx context.Context, c *xrpc.Client, limit int64) (*UnspeccedGetSuggestedStarterPacks_Output, error) {
2020+ var out UnspeccedGetSuggestedStarterPacks_Output
2121+2222+ params := map[string]interface{}{
2323+ "limit": limit,
2424+ }
2525+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getSuggestedStarterPacks", params, nil, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getSuggestedStarterPacksSkeleton
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetSuggestedStarterPacksSkeleton_Output is the output of a app.bsky.unspecced.getSuggestedStarterPacksSkeleton call.
1414+type UnspeccedGetSuggestedStarterPacksSkeleton_Output struct {
1515+ StarterPacks []string `json:"starterPacks" cborgen:"starterPacks"`
1616+}
1717+1818+// UnspeccedGetSuggestedStarterPacksSkeleton calls the XRPC method "app.bsky.unspecced.getSuggestedStarterPacksSkeleton".
1919+//
2020+// viewer: DID of the account making the request (not included for public/unauthenticated queries).
2121+func UnspeccedGetSuggestedStarterPacksSkeleton(ctx context.Context, c *xrpc.Client, limit int64, viewer string) (*UnspeccedGetSuggestedStarterPacksSkeleton_Output, error) {
2222+ var out UnspeccedGetSuggestedStarterPacksSkeleton_Output
2323+2424+ params := map[string]interface{}{
2525+ "limit": limit,
2626+ "viewer": viewer,
2727+ }
2828+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getSuggestedStarterPacksSkeleton", params, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+33
api/bsky/unspeccedgetSuggestedUsers.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getSuggestedUsers
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetSuggestedUsers_Output is the output of a app.bsky.unspecced.getSuggestedUsers call.
1414+type UnspeccedGetSuggestedUsers_Output struct {
1515+ Actors []*ActorDefs_ProfileView `json:"actors" cborgen:"actors"`
1616+}
1717+1818+// UnspeccedGetSuggestedUsers calls the XRPC method "app.bsky.unspecced.getSuggestedUsers".
1919+//
2020+// category: Category of users to get suggestions for.
2121+func UnspeccedGetSuggestedUsers(ctx context.Context, c *xrpc.Client, category string, limit int64) (*UnspeccedGetSuggestedUsers_Output, error) {
2222+ var out UnspeccedGetSuggestedUsers_Output
2323+2424+ params := map[string]interface{}{
2525+ "category": category,
2626+ "limit": limit,
2727+ }
2828+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getSuggestedUsers", params, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+35
api/bsky/unspeccedgetSuggestedUsersSkeleton.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getSuggestedUsersSkeleton
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetSuggestedUsersSkeleton_Output is the output of a app.bsky.unspecced.getSuggestedUsersSkeleton call.
1414+type UnspeccedGetSuggestedUsersSkeleton_Output struct {
1515+ Dids []string `json:"dids" cborgen:"dids"`
1616+}
1717+1818+// UnspeccedGetSuggestedUsersSkeleton calls the XRPC method "app.bsky.unspecced.getSuggestedUsersSkeleton".
1919+//
2020+// category: Category of users to get suggestions for.
2121+// viewer: DID of the account making the request (not included for public/unauthenticated queries).
2222+func UnspeccedGetSuggestedUsersSkeleton(ctx context.Context, c *xrpc.Client, category string, limit int64, viewer string) (*UnspeccedGetSuggestedUsersSkeleton_Output, error) {
2323+ var out UnspeccedGetSuggestedUsersSkeleton_Output
2424+2525+ params := map[string]interface{}{
2626+ "category": category,
2727+ "limit": limit,
2828+ "viewer": viewer,
2929+ }
3030+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getSuggestedUsersSkeleton", params, nil, &out); err != nil {
3131+ return nil, err
3232+ }
3333+3434+ return &out, nil
3535+}
+41
api/bsky/unspeccedgetSuggestionsSkeleton.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getSuggestionsSkeleton
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetSuggestionsSkeleton_Output is the output of a app.bsky.unspecced.getSuggestionsSkeleton call.
1414+type UnspeccedGetSuggestionsSkeleton_Output struct {
1515+ Actors []*UnspeccedDefs_SkeletonSearchActor `json:"actors" cborgen:"actors"`
1616+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+ // recId: Snowflake for this recommendation, use when submitting recommendation events.
1818+ RecId *int64 `json:"recId,omitempty" cborgen:"recId,omitempty"`
1919+ // relativeToDid: DID of the account these suggestions are relative to. If this is returned undefined, suggestions are based on the viewer.
2020+ RelativeToDid *string `json:"relativeToDid,omitempty" cborgen:"relativeToDid,omitempty"`
2121+}
2222+2323+// UnspeccedGetSuggestionsSkeleton calls the XRPC method "app.bsky.unspecced.getSuggestionsSkeleton".
2424+//
2525+// relativeToDid: DID of the account to get suggestions relative to. If not provided, suggestions will be based on the viewer.
2626+// viewer: DID of the account making the request (not included for public/unauthenticated queries). Used to boost followed accounts in ranking.
2727+func UnspeccedGetSuggestionsSkeleton(ctx context.Context, c *xrpc.Client, cursor string, limit int64, relativeToDid string, viewer string) (*UnspeccedGetSuggestionsSkeleton_Output, error) {
2828+ var out UnspeccedGetSuggestionsSkeleton_Output
2929+3030+ params := map[string]interface{}{
3131+ "cursor": cursor,
3232+ "limit": limit,
3333+ "relativeToDid": relativeToDid,
3434+ "viewer": viewer,
3535+ }
3636+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getSuggestionsSkeleton", params, nil, &out); err != nil {
3737+ return nil, err
3838+ }
3939+4040+ return &out, nil
4141+}
+35
api/bsky/unspeccedgetTaggedSuggestions.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getTaggedSuggestions
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetTaggedSuggestions_Output is the output of a app.bsky.unspecced.getTaggedSuggestions call.
1414+type UnspeccedGetTaggedSuggestions_Output struct {
1515+ Suggestions []*UnspeccedGetTaggedSuggestions_Suggestion `json:"suggestions" cborgen:"suggestions"`
1616+}
1717+1818+// UnspeccedGetTaggedSuggestions_Suggestion is a "suggestion" in the app.bsky.unspecced.getTaggedSuggestions schema.
1919+type UnspeccedGetTaggedSuggestions_Suggestion struct {
2020+ Subject string `json:"subject" cborgen:"subject"`
2121+ SubjectType string `json:"subjectType" cborgen:"subjectType"`
2222+ Tag string `json:"tag" cborgen:"tag"`
2323+}
2424+2525+// UnspeccedGetTaggedSuggestions calls the XRPC method "app.bsky.unspecced.getTaggedSuggestions".
2626+func UnspeccedGetTaggedSuggestions(ctx context.Context, c *xrpc.Client) (*UnspeccedGetTaggedSuggestions_Output, error) {
2727+ var out UnspeccedGetTaggedSuggestions_Output
2828+2929+ params := map[string]interface{}{}
3030+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getTaggedSuggestions", params, nil, &out); err != nil {
3131+ return nil, err
3232+ }
3333+3434+ return &out, nil
3535+}
+34
api/bsky/unspeccedgetTrendingTopics.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getTrendingTopics
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetTrendingTopics_Output is the output of a app.bsky.unspecced.getTrendingTopics call.
1414+type UnspeccedGetTrendingTopics_Output struct {
1515+ Suggested []*UnspeccedDefs_TrendingTopic `json:"suggested" cborgen:"suggested"`
1616+ Topics []*UnspeccedDefs_TrendingTopic `json:"topics" cborgen:"topics"`
1717+}
1818+1919+// UnspeccedGetTrendingTopics calls the XRPC method "app.bsky.unspecced.getTrendingTopics".
2020+//
2121+// viewer: DID of the account making the request (not included for public/unauthenticated queries). Used to boost followed accounts in ranking.
2222+func UnspeccedGetTrendingTopics(ctx context.Context, c *xrpc.Client, limit int64, viewer string) (*UnspeccedGetTrendingTopics_Output, error) {
2323+ var out UnspeccedGetTrendingTopics_Output
2424+2525+ params := map[string]interface{}{
2626+ "limit": limit,
2727+ "viewer": viewer,
2828+ }
2929+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getTrendingTopics", params, nil, &out); err != nil {
3030+ return nil, err
3131+ }
3232+3333+ return &out, nil
3434+}
+30
api/bsky/unspeccedgetTrends.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getTrends
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetTrends_Output is the output of a app.bsky.unspecced.getTrends call.
1414+type UnspeccedGetTrends_Output struct {
1515+ Trends []*UnspeccedDefs_TrendView `json:"trends" cborgen:"trends"`
1616+}
1717+1818+// UnspeccedGetTrends calls the XRPC method "app.bsky.unspecced.getTrends".
1919+func UnspeccedGetTrends(ctx context.Context, c *xrpc.Client, limit int64) (*UnspeccedGetTrends_Output, error) {
2020+ var out UnspeccedGetTrends_Output
2121+2222+ params := map[string]interface{}{
2323+ "limit": limit,
2424+ }
2525+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getTrends", params, nil, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+33
api/bsky/unspeccedgetTrendsSkeleton.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getTrendsSkeleton
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetTrendsSkeleton_Output is the output of a app.bsky.unspecced.getTrendsSkeleton call.
1414+type UnspeccedGetTrendsSkeleton_Output struct {
1515+ Trends []*UnspeccedDefs_SkeletonTrend `json:"trends" cborgen:"trends"`
1616+}
1717+1818+// UnspeccedGetTrendsSkeleton calls the XRPC method "app.bsky.unspecced.getTrendsSkeleton".
1919+//
2020+// viewer: DID of the account making the request (not included for public/unauthenticated queries).
2121+func UnspeccedGetTrendsSkeleton(ctx context.Context, c *xrpc.Client, limit int64, viewer string) (*UnspeccedGetTrendsSkeleton_Output, error) {
2222+ var out UnspeccedGetTrendsSkeleton_Output
2323+2424+ params := map[string]interface{}{
2525+ "limit": limit,
2626+ "viewer": viewer,
2727+ }
2828+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getTrendsSkeleton", params, nil, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+42
api/bsky/unspeccedsearchActorsSkeleton.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.searchActorsSkeleton
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedSearchActorsSkeleton_Output is the output of a app.bsky.unspecced.searchActorsSkeleton call.
1414+type UnspeccedSearchActorsSkeleton_Output struct {
1515+ Actors []*UnspeccedDefs_SkeletonSearchActor `json:"actors" cborgen:"actors"`
1616+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+ // hitsTotal: Count of search hits. Optional, may be rounded/truncated, and may not be possible to paginate through all hits.
1818+ HitsTotal *int64 `json:"hitsTotal,omitempty" cborgen:"hitsTotal,omitempty"`
1919+}
2020+2121+// UnspeccedSearchActorsSkeleton calls the XRPC method "app.bsky.unspecced.searchActorsSkeleton".
2222+//
2323+// cursor: Optional pagination mechanism; may not necessarily allow scrolling through entire result set.
2424+// q: Search query string; syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended. For typeahead search, only simple term match is supported, not full syntax.
2525+// typeahead: If true, acts as fast/simple 'typeahead' query.
2626+// viewer: DID of the account making the request (not included for public/unauthenticated queries). Used to boost followed accounts in ranking.
2727+func UnspeccedSearchActorsSkeleton(ctx context.Context, c *xrpc.Client, cursor string, limit int64, q string, typeahead bool, viewer string) (*UnspeccedSearchActorsSkeleton_Output, error) {
2828+ var out UnspeccedSearchActorsSkeleton_Output
2929+3030+ params := map[string]interface{}{
3131+ "cursor": cursor,
3232+ "limit": limit,
3333+ "q": q,
3434+ "typeahead": typeahead,
3535+ "viewer": viewer,
3636+ }
3737+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.searchActorsSkeleton", params, nil, &out); err != nil {
3838+ return nil, err
3939+ }
4040+4141+ return &out, nil
4242+}
+58
api/bsky/unspeccedsearchPostsSkeleton.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.searchPostsSkeleton
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedSearchPostsSkeleton_Output is the output of a app.bsky.unspecced.searchPostsSkeleton call.
1414+type UnspeccedSearchPostsSkeleton_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ // hitsTotal: Count of search hits. Optional, may be rounded/truncated, and may not be possible to paginate through all hits.
1717+ HitsTotal *int64 `json:"hitsTotal,omitempty" cborgen:"hitsTotal,omitempty"`
1818+ Posts []*UnspeccedDefs_SkeletonSearchPost `json:"posts" cborgen:"posts"`
1919+}
2020+2121+// UnspeccedSearchPostsSkeleton calls the XRPC method "app.bsky.unspecced.searchPostsSkeleton".
2222+//
2323+// author: Filter to posts by the given account. Handles are resolved to DID before query-time.
2424+// cursor: Optional pagination mechanism; may not necessarily allow scrolling through entire result set.
2525+// domain: Filter to posts with URLs (facet links or embeds) linking to the given domain (hostname). Server may apply hostname normalization.
2626+// lang: Filter to posts in the given language. Expected to be based on post language field, though server may override language detection.
2727+// mentions: Filter to posts which mention the given account. Handles are resolved to DID before query-time. Only matches rich-text facet mentions.
2828+// q: Search query string; syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended.
2929+// since: Filter results for posts after the indicated datetime (inclusive). Expected to use 'sortAt' timestamp, which may not match 'createdAt'. Can be a datetime, or just an ISO date (YYYY-MM-DD).
3030+// sort: Specifies the ranking order of results.
3131+// tag: Filter to posts with the given tag (hashtag), based on rich-text facet or tag field. Do not include the hash (#) prefix. Multiple tags can be specified, with 'AND' matching.
3232+// until: Filter results for posts before the indicated datetime (not inclusive). Expected to use 'sortAt' timestamp, which may not match 'createdAt'. Can be a datetime, or just an ISO date (YYY-MM-DD).
3333+// url: Filter to posts with links (facet links or embeds) pointing to this URL. Server may apply URL normalization or fuzzy matching.
3434+// viewer: DID of the account making the request (not included for public/unauthenticated queries). Used for 'from:me' queries.
3535+func UnspeccedSearchPostsSkeleton(ctx context.Context, c *xrpc.Client, author string, cursor string, domain string, lang string, limit int64, mentions string, q string, since string, sort string, tag []string, until string, url string, viewer string) (*UnspeccedSearchPostsSkeleton_Output, error) {
3636+ var out UnspeccedSearchPostsSkeleton_Output
3737+3838+ params := map[string]interface{}{
3939+ "author": author,
4040+ "cursor": cursor,
4141+ "domain": domain,
4242+ "lang": lang,
4343+ "limit": limit,
4444+ "mentions": mentions,
4545+ "q": q,
4646+ "since": since,
4747+ "sort": sort,
4848+ "tag": tag,
4949+ "until": until,
5050+ "url": url,
5151+ "viewer": viewer,
5252+ }
5353+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.searchPostsSkeleton", params, nil, &out); err != nil {
5454+ return nil, err
5555+ }
5656+5757+ return &out, nil
5858+}
+40
api/bsky/unspeccedsearchStarterPacksSkeleton.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.searchStarterPacksSkeleton
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedSearchStarterPacksSkeleton_Output is the output of a app.bsky.unspecced.searchStarterPacksSkeleton call.
1414+type UnspeccedSearchStarterPacksSkeleton_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ // hitsTotal: Count of search hits. Optional, may be rounded/truncated, and may not be possible to paginate through all hits.
1717+ HitsTotal *int64 `json:"hitsTotal,omitempty" cborgen:"hitsTotal,omitempty"`
1818+ StarterPacks []*UnspeccedDefs_SkeletonSearchStarterPack `json:"starterPacks" cborgen:"starterPacks"`
1919+}
2020+2121+// UnspeccedSearchStarterPacksSkeleton calls the XRPC method "app.bsky.unspecced.searchStarterPacksSkeleton".
2222+//
2323+// cursor: Optional pagination mechanism; may not necessarily allow scrolling through entire result set.
2424+// q: Search query string; syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended.
2525+// viewer: DID of the account making the request (not included for public/unauthenticated queries).
2626+func UnspeccedSearchStarterPacksSkeleton(ctx context.Context, c *xrpc.Client, cursor string, limit int64, q string, viewer string) (*UnspeccedSearchStarterPacksSkeleton_Output, error) {
2727+ var out UnspeccedSearchStarterPacksSkeleton_Output
2828+2929+ params := map[string]interface{}{
3030+ "cursor": cursor,
3131+ "limit": limit,
3232+ "q": q,
3333+ "viewer": viewer,
3434+ }
3535+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.searchStarterPacksSkeleton", params, nil, &out); err != nil {
3636+ return nil, err
3737+ }
3838+3939+ return &out, nil
4040+}
+22
api/bsky/videodefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.video.defs
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+// VideoDefs_JobStatus is a "jobStatus" in the app.bsky.video.defs schema.
1212+type VideoDefs_JobStatus struct {
1313+ Blob *util.LexBlob `json:"blob,omitempty" cborgen:"blob,omitempty"`
1414+ Did string `json:"did" cborgen:"did"`
1515+ Error *string `json:"error,omitempty" cborgen:"error,omitempty"`
1616+ JobId string `json:"jobId" cborgen:"jobId"`
1717+ Message *string `json:"message,omitempty" cborgen:"message,omitempty"`
1818+ // progress: Progress within the current processing state.
1919+ Progress *int64 `json:"progress,omitempty" cborgen:"progress,omitempty"`
2020+ // state: The state of the video processing job. All values not listed as a known value indicate that the job is in process.
2121+ State string `json:"state" cborgen:"state"`
2222+}
+30
api/bsky/videogetJobStatus.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.video.getJobStatus
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// VideoGetJobStatus_Output is the output of a app.bsky.video.getJobStatus call.
1414+type VideoGetJobStatus_Output struct {
1515+ JobStatus *VideoDefs_JobStatus `json:"jobStatus" cborgen:"jobStatus"`
1616+}
1717+1818+// VideoGetJobStatus calls the XRPC method "app.bsky.video.getJobStatus".
1919+func VideoGetJobStatus(ctx context.Context, c *xrpc.Client, jobId string) (*VideoGetJobStatus_Output, error) {
2020+ var out VideoGetJobStatus_Output
2121+2222+ params := map[string]interface{}{
2323+ "jobId": jobId,
2424+ }
2525+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.video.getJobStatus", params, nil, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+30
api/bsky/videogetUploadLimits.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.video.getUploadLimits
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// VideoGetUploadLimits_Output is the output of a app.bsky.video.getUploadLimits call.
1414+type VideoGetUploadLimits_Output struct {
1515+ CanUpload bool `json:"canUpload" cborgen:"canUpload"`
1616+ Error *string `json:"error,omitempty" cborgen:"error,omitempty"`
1717+ Message *string `json:"message,omitempty" cborgen:"message,omitempty"`
1818+ RemainingDailyBytes *int64 `json:"remainingDailyBytes,omitempty" cborgen:"remainingDailyBytes,omitempty"`
1919+ RemainingDailyVideos *int64 `json:"remainingDailyVideos,omitempty" cborgen:"remainingDailyVideos,omitempty"`
2020+}
2121+2222+// VideoGetUploadLimits calls the XRPC method "app.bsky.video.getUploadLimits".
2323+func VideoGetUploadLimits(ctx context.Context, c *xrpc.Client) (*VideoGetUploadLimits_Output, error) {
2424+ var out VideoGetUploadLimits_Output
2525+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.video.getUploadLimits", nil, nil, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+27
api/bsky/videouploadVideo.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.video.uploadVideo
66+77+import (
88+ "context"
99+ "io"
1010+1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// VideoUploadVideo_Output is the output of a app.bsky.video.uploadVideo call.
1515+type VideoUploadVideo_Output struct {
1616+ JobStatus *VideoDefs_JobStatus `json:"jobStatus" cborgen:"jobStatus"`
1717+}
1818+1919+// VideoUploadVideo calls the XRPC method "app.bsky.video.uploadVideo".
2020+func VideoUploadVideo(ctx context.Context, c *xrpc.Client, input io.Reader) (*VideoUploadVideo_Output, error) {
2121+ var out VideoUploadVideo_Output
2222+ if err := c.Do(ctx, xrpc.Procedure, "video/mp4", "app.bsky.video.uploadVideo", nil, input, &out); err != nil {
2323+ return nil, err
2424+ }
2525+2626+ return &out, nil
2727+}
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.convo.leaveConvo
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ConvoLeaveConvo_Input is the input argument to a chat.bsky.convo.leaveConvo call.
1414+type ConvoLeaveConvo_Input struct {
1515+ ConvoId string `json:"convoId" cborgen:"convoId"`
1616+}
1717+1818+// ConvoLeaveConvo_Output is the output of a chat.bsky.convo.leaveConvo call.
1919+type ConvoLeaveConvo_Output struct {
2020+ ConvoId string `json:"convoId" cborgen:"convoId"`
2121+ Rev string `json:"rev" cborgen:"rev"`
2222+}
2323+2424+// ConvoLeaveConvo calls the XRPC method "chat.bsky.convo.leaveConvo".
2525+func ConvoLeaveConvo(ctx context.Context, c *xrpc.Client, input *ConvoLeaveConvo_Input) (*ConvoLeaveConvo_Output, error) {
2626+ var out ConvoLeaveConvo_Output
2727+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.convo.leaveConvo", nil, input, &out); err != nil {
2828+ return nil, err
2929+ }
3030+3131+ return &out, nil
3232+}
+34
api/chat/convolistConvos.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.convo.listConvos
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ConvoListConvos_Output is the output of a chat.bsky.convo.listConvos call.
1414+type ConvoListConvos_Output struct {
1515+ Convos []*ConvoDefs_ConvoView `json:"convos" cborgen:"convos"`
1616+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+}
1818+1919+// ConvoListConvos calls the XRPC method "chat.bsky.convo.listConvos".
2020+func ConvoListConvos(ctx context.Context, c *xrpc.Client, cursor string, limit int64, readState string, status string) (*ConvoListConvos_Output, error) {
2121+ var out ConvoListConvos_Output
2222+2323+ params := map[string]interface{}{
2424+ "cursor": cursor,
2525+ "limit": limit,
2626+ "readState": readState,
2727+ "status": status,
2828+ }
2929+ if err := c.Do(ctx, xrpc.Query, "", "chat.bsky.convo.listConvos", params, nil, &out); err != nil {
3030+ return nil, err
3131+ }
3232+3333+ return &out, nil
3434+}
+31
api/chat/convomuteConvo.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.convo.muteConvo
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ConvoMuteConvo_Input is the input argument to a chat.bsky.convo.muteConvo call.
1414+type ConvoMuteConvo_Input struct {
1515+ ConvoId string `json:"convoId" cborgen:"convoId"`
1616+}
1717+1818+// ConvoMuteConvo_Output is the output of a chat.bsky.convo.muteConvo call.
1919+type ConvoMuteConvo_Output struct {
2020+ Convo *ConvoDefs_ConvoView `json:"convo" cborgen:"convo"`
2121+}
2222+2323+// ConvoMuteConvo calls the XRPC method "chat.bsky.convo.muteConvo".
2424+func ConvoMuteConvo(ctx context.Context, c *xrpc.Client, input *ConvoMuteConvo_Input) (*ConvoMuteConvo_Output, error) {
2525+ var out ConvoMuteConvo_Output
2626+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.convo.muteConvo", nil, input, &out); err != nil {
2727+ return nil, err
2828+ }
2929+3030+ return &out, nil
3131+}
+33
api/chat/convoremoveReaction.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.convo.removeReaction
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ConvoRemoveReaction_Input is the input argument to a chat.bsky.convo.removeReaction call.
1414+type ConvoRemoveReaction_Input struct {
1515+ ConvoId string `json:"convoId" cborgen:"convoId"`
1616+ MessageId string `json:"messageId" cborgen:"messageId"`
1717+ Value string `json:"value" cborgen:"value"`
1818+}
1919+2020+// ConvoRemoveReaction_Output is the output of a chat.bsky.convo.removeReaction call.
2121+type ConvoRemoveReaction_Output struct {
2222+ Message *ConvoDefs_MessageView `json:"message" cborgen:"message"`
2323+}
2424+2525+// ConvoRemoveReaction calls the XRPC method "chat.bsky.convo.removeReaction".
2626+func ConvoRemoveReaction(ctx context.Context, c *xrpc.Client, input *ConvoRemoveReaction_Input) (*ConvoRemoveReaction_Output, error) {
2727+ var out ConvoRemoveReaction_Output
2828+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.convo.removeReaction", nil, input, &out); err != nil {
2929+ return nil, err
3030+ }
3131+3232+ return &out, nil
3333+}
+27
api/chat/convosendMessage.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.convo.sendMessage
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ConvoSendMessage_Input is the input argument to a chat.bsky.convo.sendMessage call.
1414+type ConvoSendMessage_Input struct {
1515+ ConvoId string `json:"convoId" cborgen:"convoId"`
1616+ Message *ConvoDefs_MessageInput `json:"message" cborgen:"message"`
1717+}
1818+1919+// ConvoSendMessage calls the XRPC method "chat.bsky.convo.sendMessage".
2020+func ConvoSendMessage(ctx context.Context, c *xrpc.Client, input *ConvoSendMessage_Input) (*ConvoDefs_MessageView, error) {
2121+ var out ConvoDefs_MessageView
2222+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.convo.sendMessage", nil, input, &out); err != nil {
2323+ return nil, err
2424+ }
2525+2626+ return &out, nil
2727+}
+37
api/chat/convosendMessageBatch.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.convo.sendMessageBatch
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ConvoSendMessageBatch_BatchItem is a "batchItem" in the chat.bsky.convo.sendMessageBatch schema.
1414+type ConvoSendMessageBatch_BatchItem struct {
1515+ ConvoId string `json:"convoId" cborgen:"convoId"`
1616+ Message *ConvoDefs_MessageInput `json:"message" cborgen:"message"`
1717+}
1818+1919+// ConvoSendMessageBatch_Input is the input argument to a chat.bsky.convo.sendMessageBatch call.
2020+type ConvoSendMessageBatch_Input struct {
2121+ Items []*ConvoSendMessageBatch_BatchItem `json:"items" cborgen:"items"`
2222+}
2323+2424+// ConvoSendMessageBatch_Output is the output of a chat.bsky.convo.sendMessageBatch call.
2525+type ConvoSendMessageBatch_Output struct {
2626+ Items []*ConvoDefs_MessageView `json:"items" cborgen:"items"`
2727+}
2828+2929+// ConvoSendMessageBatch calls the XRPC method "chat.bsky.convo.sendMessageBatch".
3030+func ConvoSendMessageBatch(ctx context.Context, c *xrpc.Client, input *ConvoSendMessageBatch_Input) (*ConvoSendMessageBatch_Output, error) {
3131+ var out ConvoSendMessageBatch_Output
3232+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.convo.sendMessageBatch", nil, input, &out); err != nil {
3333+ return nil, err
3434+ }
3535+3636+ return &out, nil
3737+}
+31
api/chat/convounmuteConvo.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.convo.unmuteConvo
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ConvoUnmuteConvo_Input is the input argument to a chat.bsky.convo.unmuteConvo call.
1414+type ConvoUnmuteConvo_Input struct {
1515+ ConvoId string `json:"convoId" cborgen:"convoId"`
1616+}
1717+1818+// ConvoUnmuteConvo_Output is the output of a chat.bsky.convo.unmuteConvo call.
1919+type ConvoUnmuteConvo_Output struct {
2020+ Convo *ConvoDefs_ConvoView `json:"convo" cborgen:"convo"`
2121+}
2222+2323+// ConvoUnmuteConvo calls the XRPC method "chat.bsky.convo.unmuteConvo".
2424+func ConvoUnmuteConvo(ctx context.Context, c *xrpc.Client, input *ConvoUnmuteConvo_Input) (*ConvoUnmuteConvo_Output, error) {
2525+ var out ConvoUnmuteConvo_Output
2626+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.convo.unmuteConvo", nil, input, &out); err != nil {
2727+ return nil, err
2828+ }
2929+3030+ return &out, nil
3131+}
+32
api/chat/convoupdateAllRead.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.convo.updateAllRead
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ConvoUpdateAllRead_Input is the input argument to a chat.bsky.convo.updateAllRead call.
1414+type ConvoUpdateAllRead_Input struct {
1515+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
1616+}
1717+1818+// ConvoUpdateAllRead_Output is the output of a chat.bsky.convo.updateAllRead call.
1919+type ConvoUpdateAllRead_Output struct {
2020+ // updatedCount: The count of updated convos.
2121+ UpdatedCount int64 `json:"updatedCount" cborgen:"updatedCount"`
2222+}
2323+2424+// ConvoUpdateAllRead calls the XRPC method "chat.bsky.convo.updateAllRead".
2525+func ConvoUpdateAllRead(ctx context.Context, c *xrpc.Client, input *ConvoUpdateAllRead_Input) (*ConvoUpdateAllRead_Output, error) {
2626+ var out ConvoUpdateAllRead_Output
2727+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.convo.updateAllRead", nil, input, &out); err != nil {
2828+ return nil, err
2929+ }
3030+3131+ return &out, nil
3232+}
+32
api/chat/convoupdateRead.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.convo.updateRead
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ConvoUpdateRead_Input is the input argument to a chat.bsky.convo.updateRead call.
1414+type ConvoUpdateRead_Input struct {
1515+ ConvoId string `json:"convoId" cborgen:"convoId"`
1616+ MessageId *string `json:"messageId,omitempty" cborgen:"messageId,omitempty"`
1717+}
1818+1919+// ConvoUpdateRead_Output is the output of a chat.bsky.convo.updateRead call.
2020+type ConvoUpdateRead_Output struct {
2121+ Convo *ConvoDefs_ConvoView `json:"convo" cborgen:"convo"`
2222+}
2323+2424+// ConvoUpdateRead calls the XRPC method "chat.bsky.convo.updateRead".
2525+func ConvoUpdateRead(ctx context.Context, c *xrpc.Client, input *ConvoUpdateRead_Input) (*ConvoUpdateRead_Output, error) {
2626+ var out ConvoUpdateRead_Output
2727+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.convo.updateRead", nil, input, &out); err != nil {
2828+ return nil, err
2929+ }
3030+3131+ return &out, nil
3232+}
+40
api/chat/moderationgetActorMetadata.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.moderation.getActorMetadata
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ModerationGetActorMetadata_Metadata is a "metadata" in the chat.bsky.moderation.getActorMetadata schema.
1414+type ModerationGetActorMetadata_Metadata struct {
1515+ Convos int64 `json:"convos" cborgen:"convos"`
1616+ ConvosStarted int64 `json:"convosStarted" cborgen:"convosStarted"`
1717+ MessagesReceived int64 `json:"messagesReceived" cborgen:"messagesReceived"`
1818+ MessagesSent int64 `json:"messagesSent" cborgen:"messagesSent"`
1919+}
2020+2121+// ModerationGetActorMetadata_Output is the output of a chat.bsky.moderation.getActorMetadata call.
2222+type ModerationGetActorMetadata_Output struct {
2323+ All *ModerationGetActorMetadata_Metadata `json:"all" cborgen:"all"`
2424+ Day *ModerationGetActorMetadata_Metadata `json:"day" cborgen:"day"`
2525+ Month *ModerationGetActorMetadata_Metadata `json:"month" cborgen:"month"`
2626+}
2727+2828+// ModerationGetActorMetadata calls the XRPC method "chat.bsky.moderation.getActorMetadata".
2929+func ModerationGetActorMetadata(ctx context.Context, c *xrpc.Client, actor string) (*ModerationGetActorMetadata_Output, error) {
3030+ var out ModerationGetActorMetadata_Output
3131+3232+ params := map[string]interface{}{
3333+ "actor": actor,
3434+ }
3535+ if err := c.Do(ctx, xrpc.Query, "", "chat.bsky.moderation.getActorMetadata", params, nil, &out); err != nil {
3636+ return nil, err
3737+ }
3838+3939+ return &out, nil
4040+}
+73
api/chat/moderationgetMessageContext.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.moderation.getMessageContext
66+77+import (
88+ "context"
99+ "encoding/json"
1010+ "fmt"
1111+1212+ "github.com/bluesky-social/indigo/lex/util"
1313+ "github.com/bluesky-social/indigo/xrpc"
1414+)
1515+1616+// ModerationGetMessageContext_Output is the output of a chat.bsky.moderation.getMessageContext call.
1717+type ModerationGetMessageContext_Output struct {
1818+ Messages []*ModerationGetMessageContext_Output_Messages_Elem `json:"messages" cborgen:"messages"`
1919+}
2020+2121+type ModerationGetMessageContext_Output_Messages_Elem struct {
2222+ ConvoDefs_MessageView *ConvoDefs_MessageView
2323+ ConvoDefs_DeletedMessageView *ConvoDefs_DeletedMessageView
2424+}
2525+2626+func (t *ModerationGetMessageContext_Output_Messages_Elem) MarshalJSON() ([]byte, error) {
2727+ if t.ConvoDefs_MessageView != nil {
2828+ t.ConvoDefs_MessageView.LexiconTypeID = "chat.bsky.convo.defs#messageView"
2929+ return json.Marshal(t.ConvoDefs_MessageView)
3030+ }
3131+ if t.ConvoDefs_DeletedMessageView != nil {
3232+ t.ConvoDefs_DeletedMessageView.LexiconTypeID = "chat.bsky.convo.defs#deletedMessageView"
3333+ return json.Marshal(t.ConvoDefs_DeletedMessageView)
3434+ }
3535+ return nil, fmt.Errorf("cannot marshal empty enum")
3636+}
3737+func (t *ModerationGetMessageContext_Output_Messages_Elem) UnmarshalJSON(b []byte) error {
3838+ typ, err := util.TypeExtract(b)
3939+ if err != nil {
4040+ return err
4141+ }
4242+4343+ switch typ {
4444+ case "chat.bsky.convo.defs#messageView":
4545+ t.ConvoDefs_MessageView = new(ConvoDefs_MessageView)
4646+ return json.Unmarshal(b, t.ConvoDefs_MessageView)
4747+ case "chat.bsky.convo.defs#deletedMessageView":
4848+ t.ConvoDefs_DeletedMessageView = new(ConvoDefs_DeletedMessageView)
4949+ return json.Unmarshal(b, t.ConvoDefs_DeletedMessageView)
5050+5151+ default:
5252+ return nil
5353+ }
5454+}
5555+5656+// ModerationGetMessageContext calls the XRPC method "chat.bsky.moderation.getMessageContext".
5757+//
5858+// convoId: Conversation that the message is from. NOTE: this field will eventually be required.
5959+func ModerationGetMessageContext(ctx context.Context, c *xrpc.Client, after int64, before int64, convoId string, messageId string) (*ModerationGetMessageContext_Output, error) {
6060+ var out ModerationGetMessageContext_Output
6161+6262+ params := map[string]interface{}{
6363+ "after": after,
6464+ "before": before,
6565+ "convoId": convoId,
6666+ "messageId": messageId,
6767+ }
6868+ if err := c.Do(ctx, xrpc.Query, "", "chat.bsky.moderation.getMessageContext", params, nil, &out); err != nil {
6969+ return nil, err
7070+ }
7171+7272+ return &out, nil
7373+}
+27
api/chat/moderationupdateActorAccess.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package chat
44+55+// schema: chat.bsky.moderation.updateActorAccess
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ModerationUpdateActorAccess_Input is the input argument to a chat.bsky.moderation.updateActorAccess call.
1414+type ModerationUpdateActorAccess_Input struct {
1515+ Actor string `json:"actor" cborgen:"actor"`
1616+ AllowAccess bool `json:"allowAccess" cborgen:"allowAccess"`
1717+ Ref *string `json:"ref,omitempty" cborgen:"ref,omitempty"`
1818+}
1919+2020+// ModerationUpdateActorAccess calls the XRPC method "chat.bsky.moderation.updateActorAccess".
2121+func ModerationUpdateActorAccess(ctx context.Context, c *xrpc.Client, input *ModerationUpdateActorAccess_Input) error {
2222+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.moderation.updateActorAccess", nil, input, nil); err != nil {
2323+ return err
2424+ }
2525+2626+ return nil
2727+}
+35
api/ozone/communicationcreateTemplate.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.communication.createTemplate
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// CommunicationCreateTemplate_Input is the input argument to a tools.ozone.communication.createTemplate call.
1414+type CommunicationCreateTemplate_Input struct {
1515+ // contentMarkdown: Content of the template, markdown supported, can contain variable placeholders.
1616+ ContentMarkdown string `json:"contentMarkdown" cborgen:"contentMarkdown"`
1717+ // createdBy: DID of the user who is creating the template.
1818+ CreatedBy *string `json:"createdBy,omitempty" cborgen:"createdBy,omitempty"`
1919+ // lang: Message language.
2020+ Lang *string `json:"lang,omitempty" cborgen:"lang,omitempty"`
2121+ // name: Name of the template.
2222+ Name string `json:"name" cborgen:"name"`
2323+ // subject: Subject of the message, used in emails.
2424+ Subject string `json:"subject" cborgen:"subject"`
2525+}
2626+2727+// CommunicationCreateTemplate calls the XRPC method "tools.ozone.communication.createTemplate".
2828+func CommunicationCreateTemplate(ctx context.Context, c *xrpc.Client, input *CommunicationCreateTemplate_Input) (*CommunicationDefs_TemplateView, error) {
2929+ var out CommunicationDefs_TemplateView
3030+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.communication.createTemplate", nil, input, &out); err != nil {
3131+ return nil, err
3232+ }
3333+3434+ return &out, nil
3535+}
+23
api/ozone/communicationdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.communication.defs
66+77+// CommunicationDefs_TemplateView is a "templateView" in the tools.ozone.communication.defs schema.
88+type CommunicationDefs_TemplateView struct {
99+ // contentMarkdown: Subject of the message, used in emails.
1010+ ContentMarkdown string `json:"contentMarkdown" cborgen:"contentMarkdown"`
1111+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1212+ Disabled bool `json:"disabled" cborgen:"disabled"`
1313+ Id string `json:"id" cborgen:"id"`
1414+ // lang: Message language.
1515+ Lang *string `json:"lang,omitempty" cborgen:"lang,omitempty"`
1616+ // lastUpdatedBy: DID of the user who last updated the template.
1717+ LastUpdatedBy string `json:"lastUpdatedBy" cborgen:"lastUpdatedBy"`
1818+ // name: Name of the template.
1919+ Name string `json:"name" cborgen:"name"`
2020+ // subject: Content of the template, can contain markdown and variable placeholders.
2121+ Subject *string `json:"subject,omitempty" cborgen:"subject,omitempty"`
2222+ UpdatedAt string `json:"updatedAt" cborgen:"updatedAt"`
2323+}
+25
api/ozone/communicationdeleteTemplate.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.communication.deleteTemplate
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// CommunicationDeleteTemplate_Input is the input argument to a tools.ozone.communication.deleteTemplate call.
1414+type CommunicationDeleteTemplate_Input struct {
1515+ Id string `json:"id" cborgen:"id"`
1616+}
1717+1818+// CommunicationDeleteTemplate calls the XRPC method "tools.ozone.communication.deleteTemplate".
1919+func CommunicationDeleteTemplate(ctx context.Context, c *xrpc.Client, input *CommunicationDeleteTemplate_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.communication.deleteTemplate", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+26
api/ozone/communicationlistTemplates.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.communication.listTemplates
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// CommunicationListTemplates_Output is the output of a tools.ozone.communication.listTemplates call.
1414+type CommunicationListTemplates_Output struct {
1515+ CommunicationTemplates []*CommunicationDefs_TemplateView `json:"communicationTemplates" cborgen:"communicationTemplates"`
1616+}
1717+1818+// CommunicationListTemplates calls the XRPC method "tools.ozone.communication.listTemplates".
1919+func CommunicationListTemplates(ctx context.Context, c *xrpc.Client) (*CommunicationListTemplates_Output, error) {
2020+ var out CommunicationListTemplates_Output
2121+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.communication.listTemplates", nil, nil, &out); err != nil {
2222+ return nil, err
2323+ }
2424+2525+ return &out, nil
2626+}
+38
api/ozone/communicationupdateTemplate.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.communication.updateTemplate
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// CommunicationUpdateTemplate_Input is the input argument to a tools.ozone.communication.updateTemplate call.
1414+type CommunicationUpdateTemplate_Input struct {
1515+ // contentMarkdown: Content of the template, markdown supported, can contain variable placeholders.
1616+ ContentMarkdown *string `json:"contentMarkdown,omitempty" cborgen:"contentMarkdown,omitempty"`
1717+ Disabled *bool `json:"disabled,omitempty" cborgen:"disabled,omitempty"`
1818+ // id: ID of the template to be updated.
1919+ Id string `json:"id" cborgen:"id"`
2020+ // lang: Message language.
2121+ Lang *string `json:"lang,omitempty" cborgen:"lang,omitempty"`
2222+ // name: Name of the template.
2323+ Name *string `json:"name,omitempty" cborgen:"name,omitempty"`
2424+ // subject: Subject of the message, used in emails.
2525+ Subject *string `json:"subject,omitempty" cborgen:"subject,omitempty"`
2626+ // updatedBy: DID of the user who is updating the template.
2727+ UpdatedBy *string `json:"updatedBy,omitempty" cborgen:"updatedBy,omitempty"`
2828+}
2929+3030+// CommunicationUpdateTemplate calls the XRPC method "tools.ozone.communication.updateTemplate".
3131+func CommunicationUpdateTemplate(ctx context.Context, c *xrpc.Client, input *CommunicationUpdateTemplate_Input) (*CommunicationDefs_TemplateView, error) {
3232+ var out CommunicationDefs_TemplateView
3333+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.communication.updateTemplate", nil, input, &out); err != nil {
3434+ return nil, err
3535+ }
3636+3737+ return &out, nil
3838+}
+143
api/ozone/hostinggetAccountHistory.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.hosting.getAccountHistory
66+77+import (
88+ "context"
99+ "encoding/json"
1010+ "fmt"
1111+1212+ "github.com/bluesky-social/indigo/lex/util"
1313+ "github.com/bluesky-social/indigo/xrpc"
1414+)
1515+1616+// HostingGetAccountHistory_AccountCreated is a "accountCreated" in the tools.ozone.hosting.getAccountHistory schema.
1717+//
1818+// RECORDTYPE: HostingGetAccountHistory_AccountCreated
1919+type HostingGetAccountHistory_AccountCreated struct {
2020+ LexiconTypeID string `json:"$type,const=tools.ozone.hosting.getAccountHistory#accountCreated" cborgen:"$type,const=tools.ozone.hosting.getAccountHistory#accountCreated"`
2121+ Email *string `json:"email,omitempty" cborgen:"email,omitempty"`
2222+ Handle *string `json:"handle,omitempty" cborgen:"handle,omitempty"`
2323+}
2424+2525+// HostingGetAccountHistory_EmailConfirmed is a "emailConfirmed" in the tools.ozone.hosting.getAccountHistory schema.
2626+//
2727+// RECORDTYPE: HostingGetAccountHistory_EmailConfirmed
2828+type HostingGetAccountHistory_EmailConfirmed struct {
2929+ LexiconTypeID string `json:"$type,const=tools.ozone.hosting.getAccountHistory#emailConfirmed" cborgen:"$type,const=tools.ozone.hosting.getAccountHistory#emailConfirmed"`
3030+ Email string `json:"email" cborgen:"email"`
3131+}
3232+3333+// HostingGetAccountHistory_EmailUpdated is a "emailUpdated" in the tools.ozone.hosting.getAccountHistory schema.
3434+//
3535+// RECORDTYPE: HostingGetAccountHistory_EmailUpdated
3636+type HostingGetAccountHistory_EmailUpdated struct {
3737+ LexiconTypeID string `json:"$type,const=tools.ozone.hosting.getAccountHistory#emailUpdated" cborgen:"$type,const=tools.ozone.hosting.getAccountHistory#emailUpdated"`
3838+ Email string `json:"email" cborgen:"email"`
3939+}
4040+4141+// HostingGetAccountHistory_Event is a "event" in the tools.ozone.hosting.getAccountHistory schema.
4242+type HostingGetAccountHistory_Event struct {
4343+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
4444+ CreatedBy string `json:"createdBy" cborgen:"createdBy"`
4545+ Details *HostingGetAccountHistory_Event_Details `json:"details" cborgen:"details"`
4646+}
4747+4848+type HostingGetAccountHistory_Event_Details struct {
4949+ HostingGetAccountHistory_AccountCreated *HostingGetAccountHistory_AccountCreated
5050+ HostingGetAccountHistory_EmailUpdated *HostingGetAccountHistory_EmailUpdated
5151+ HostingGetAccountHistory_EmailConfirmed *HostingGetAccountHistory_EmailConfirmed
5252+ HostingGetAccountHistory_PasswordUpdated *HostingGetAccountHistory_PasswordUpdated
5353+ HostingGetAccountHistory_HandleUpdated *HostingGetAccountHistory_HandleUpdated
5454+}
5555+5656+func (t *HostingGetAccountHistory_Event_Details) MarshalJSON() ([]byte, error) {
5757+ if t.HostingGetAccountHistory_AccountCreated != nil {
5858+ t.HostingGetAccountHistory_AccountCreated.LexiconTypeID = "tools.ozone.hosting.getAccountHistory#accountCreated"
5959+ return json.Marshal(t.HostingGetAccountHistory_AccountCreated)
6060+ }
6161+ if t.HostingGetAccountHistory_EmailUpdated != nil {
6262+ t.HostingGetAccountHistory_EmailUpdated.LexiconTypeID = "tools.ozone.hosting.getAccountHistory#emailUpdated"
6363+ return json.Marshal(t.HostingGetAccountHistory_EmailUpdated)
6464+ }
6565+ if t.HostingGetAccountHistory_EmailConfirmed != nil {
6666+ t.HostingGetAccountHistory_EmailConfirmed.LexiconTypeID = "tools.ozone.hosting.getAccountHistory#emailConfirmed"
6767+ return json.Marshal(t.HostingGetAccountHistory_EmailConfirmed)
6868+ }
6969+ if t.HostingGetAccountHistory_PasswordUpdated != nil {
7070+ t.HostingGetAccountHistory_PasswordUpdated.LexiconTypeID = "tools.ozone.hosting.getAccountHistory#passwordUpdated"
7171+ return json.Marshal(t.HostingGetAccountHistory_PasswordUpdated)
7272+ }
7373+ if t.HostingGetAccountHistory_HandleUpdated != nil {
7474+ t.HostingGetAccountHistory_HandleUpdated.LexiconTypeID = "tools.ozone.hosting.getAccountHistory#handleUpdated"
7575+ return json.Marshal(t.HostingGetAccountHistory_HandleUpdated)
7676+ }
7777+ return nil, fmt.Errorf("cannot marshal empty enum")
7878+}
7979+func (t *HostingGetAccountHistory_Event_Details) UnmarshalJSON(b []byte) error {
8080+ typ, err := util.TypeExtract(b)
8181+ if err != nil {
8282+ return err
8383+ }
8484+8585+ switch typ {
8686+ case "tools.ozone.hosting.getAccountHistory#accountCreated":
8787+ t.HostingGetAccountHistory_AccountCreated = new(HostingGetAccountHistory_AccountCreated)
8888+ return json.Unmarshal(b, t.HostingGetAccountHistory_AccountCreated)
8989+ case "tools.ozone.hosting.getAccountHistory#emailUpdated":
9090+ t.HostingGetAccountHistory_EmailUpdated = new(HostingGetAccountHistory_EmailUpdated)
9191+ return json.Unmarshal(b, t.HostingGetAccountHistory_EmailUpdated)
9292+ case "tools.ozone.hosting.getAccountHistory#emailConfirmed":
9393+ t.HostingGetAccountHistory_EmailConfirmed = new(HostingGetAccountHistory_EmailConfirmed)
9494+ return json.Unmarshal(b, t.HostingGetAccountHistory_EmailConfirmed)
9595+ case "tools.ozone.hosting.getAccountHistory#passwordUpdated":
9696+ t.HostingGetAccountHistory_PasswordUpdated = new(HostingGetAccountHistory_PasswordUpdated)
9797+ return json.Unmarshal(b, t.HostingGetAccountHistory_PasswordUpdated)
9898+ case "tools.ozone.hosting.getAccountHistory#handleUpdated":
9999+ t.HostingGetAccountHistory_HandleUpdated = new(HostingGetAccountHistory_HandleUpdated)
100100+ return json.Unmarshal(b, t.HostingGetAccountHistory_HandleUpdated)
101101+102102+ default:
103103+ return nil
104104+ }
105105+}
106106+107107+// HostingGetAccountHistory_HandleUpdated is a "handleUpdated" in the tools.ozone.hosting.getAccountHistory schema.
108108+//
109109+// RECORDTYPE: HostingGetAccountHistory_HandleUpdated
110110+type HostingGetAccountHistory_HandleUpdated struct {
111111+ LexiconTypeID string `json:"$type,const=tools.ozone.hosting.getAccountHistory#handleUpdated" cborgen:"$type,const=tools.ozone.hosting.getAccountHistory#handleUpdated"`
112112+ Handle string `json:"handle" cborgen:"handle"`
113113+}
114114+115115+// HostingGetAccountHistory_Output is the output of a tools.ozone.hosting.getAccountHistory call.
116116+type HostingGetAccountHistory_Output struct {
117117+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
118118+ Events []*HostingGetAccountHistory_Event `json:"events" cborgen:"events"`
119119+}
120120+121121+// HostingGetAccountHistory_PasswordUpdated is a "passwordUpdated" in the tools.ozone.hosting.getAccountHistory schema.
122122+//
123123+// RECORDTYPE: HostingGetAccountHistory_PasswordUpdated
124124+type HostingGetAccountHistory_PasswordUpdated struct {
125125+ LexiconTypeID string `json:"$type,const=tools.ozone.hosting.getAccountHistory#passwordUpdated" cborgen:"$type,const=tools.ozone.hosting.getAccountHistory#passwordUpdated"`
126126+}
127127+128128+// HostingGetAccountHistory calls the XRPC method "tools.ozone.hosting.getAccountHistory".
129129+func HostingGetAccountHistory(ctx context.Context, c *xrpc.Client, cursor string, did string, events []string, limit int64) (*HostingGetAccountHistory_Output, error) {
130130+ var out HostingGetAccountHistory_Output
131131+132132+ params := map[string]interface{}{
133133+ "cursor": cursor,
134134+ "did": did,
135135+ "events": events,
136136+ "limit": limit,
137137+ }
138138+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.hosting.getAccountHistory", params, nil, &out); err != nil {
139139+ return nil, err
140140+ }
141141+142142+ return &out, nil
143143+}
+1062
api/ozone/moderationdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.moderation.defs
66+77+import (
88+ "encoding/json"
99+ "fmt"
1010+1111+ comatprototypes "github.com/bluesky-social/indigo/api/atproto"
1212+ chatbskytypes "github.com/bluesky-social/indigo/api/chat"
1313+ "github.com/bluesky-social/indigo/lex/util"
1414+)
1515+1616+// ModerationDefs_AccountEvent is a "accountEvent" in the tools.ozone.moderation.defs schema.
1717+//
1818+// Logs account status related events on a repo subject. Normally captured by automod from the firehose and emitted to ozone for historical tracking.
1919+//
2020+// RECORDTYPE: ModerationDefs_AccountEvent
2121+type ModerationDefs_AccountEvent struct {
2222+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#accountEvent" cborgen:"$type,const=tools.ozone.moderation.defs#accountEvent"`
2323+ // active: Indicates that the account has a repository which can be fetched from the host that emitted this event.
2424+ Active bool `json:"active" cborgen:"active"`
2525+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
2626+ Status *string `json:"status,omitempty" cborgen:"status,omitempty"`
2727+ Timestamp string `json:"timestamp" cborgen:"timestamp"`
2828+}
2929+3030+// ModerationDefs_AccountHosting is a "accountHosting" in the tools.ozone.moderation.defs schema.
3131+//
3232+// RECORDTYPE: ModerationDefs_AccountHosting
3333+type ModerationDefs_AccountHosting struct {
3434+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#accountHosting" cborgen:"$type,const=tools.ozone.moderation.defs#accountHosting"`
3535+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
3636+ DeactivatedAt *string `json:"deactivatedAt,omitempty" cborgen:"deactivatedAt,omitempty"`
3737+ DeletedAt *string `json:"deletedAt,omitempty" cborgen:"deletedAt,omitempty"`
3838+ ReactivatedAt *string `json:"reactivatedAt,omitempty" cborgen:"reactivatedAt,omitempty"`
3939+ Status string `json:"status" cborgen:"status"`
4040+ UpdatedAt *string `json:"updatedAt,omitempty" cborgen:"updatedAt,omitempty"`
4141+}
4242+4343+// ModerationDefs_AccountStats is a "accountStats" in the tools.ozone.moderation.defs schema.
4444+//
4545+// Statistics about a particular account subject
4646+type ModerationDefs_AccountStats struct {
4747+ // appealCount: Total number of appeals against a moderation action on the account
4848+ AppealCount *int64 `json:"appealCount,omitempty" cborgen:"appealCount,omitempty"`
4949+ // escalateCount: Number of times the account was escalated
5050+ EscalateCount *int64 `json:"escalateCount,omitempty" cborgen:"escalateCount,omitempty"`
5151+ // reportCount: Total number of reports on the account
5252+ ReportCount *int64 `json:"reportCount,omitempty" cborgen:"reportCount,omitempty"`
5353+ // suspendCount: Number of times the account was suspended
5454+ SuspendCount *int64 `json:"suspendCount,omitempty" cborgen:"suspendCount,omitempty"`
5555+ // takedownCount: Number of times the account was taken down
5656+ TakedownCount *int64 `json:"takedownCount,omitempty" cborgen:"takedownCount,omitempty"`
5757+}
5858+5959+// ModerationDefs_BlobView is a "blobView" in the tools.ozone.moderation.defs schema.
6060+type ModerationDefs_BlobView struct {
6161+ Cid string `json:"cid" cborgen:"cid"`
6262+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
6363+ Details *ModerationDefs_BlobView_Details `json:"details,omitempty" cborgen:"details,omitempty"`
6464+ MimeType string `json:"mimeType" cborgen:"mimeType"`
6565+ Moderation *ModerationDefs_Moderation `json:"moderation,omitempty" cborgen:"moderation,omitempty"`
6666+ Size int64 `json:"size" cborgen:"size"`
6767+}
6868+6969+type ModerationDefs_BlobView_Details struct {
7070+ ModerationDefs_ImageDetails *ModerationDefs_ImageDetails
7171+ ModerationDefs_VideoDetails *ModerationDefs_VideoDetails
7272+}
7373+7474+func (t *ModerationDefs_BlobView_Details) MarshalJSON() ([]byte, error) {
7575+ if t.ModerationDefs_ImageDetails != nil {
7676+ t.ModerationDefs_ImageDetails.LexiconTypeID = "tools.ozone.moderation.defs#imageDetails"
7777+ return json.Marshal(t.ModerationDefs_ImageDetails)
7878+ }
7979+ if t.ModerationDefs_VideoDetails != nil {
8080+ t.ModerationDefs_VideoDetails.LexiconTypeID = "tools.ozone.moderation.defs#videoDetails"
8181+ return json.Marshal(t.ModerationDefs_VideoDetails)
8282+ }
8383+ return nil, fmt.Errorf("cannot marshal empty enum")
8484+}
8585+func (t *ModerationDefs_BlobView_Details) UnmarshalJSON(b []byte) error {
8686+ typ, err := util.TypeExtract(b)
8787+ if err != nil {
8888+ return err
8989+ }
9090+9191+ switch typ {
9292+ case "tools.ozone.moderation.defs#imageDetails":
9393+ t.ModerationDefs_ImageDetails = new(ModerationDefs_ImageDetails)
9494+ return json.Unmarshal(b, t.ModerationDefs_ImageDetails)
9595+ case "tools.ozone.moderation.defs#videoDetails":
9696+ t.ModerationDefs_VideoDetails = new(ModerationDefs_VideoDetails)
9797+ return json.Unmarshal(b, t.ModerationDefs_VideoDetails)
9898+9999+ default:
100100+ return nil
101101+ }
102102+}
103103+104104+// ModerationDefs_IdentityEvent is a "identityEvent" in the tools.ozone.moderation.defs schema.
105105+//
106106+// Logs identity related events on a repo subject. Normally captured by automod from the firehose and emitted to ozone for historical tracking.
107107+//
108108+// RECORDTYPE: ModerationDefs_IdentityEvent
109109+type ModerationDefs_IdentityEvent struct {
110110+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#identityEvent" cborgen:"$type,const=tools.ozone.moderation.defs#identityEvent"`
111111+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
112112+ Handle *string `json:"handle,omitempty" cborgen:"handle,omitempty"`
113113+ PdsHost *string `json:"pdsHost,omitempty" cborgen:"pdsHost,omitempty"`
114114+ Timestamp string `json:"timestamp" cborgen:"timestamp"`
115115+ Tombstone *bool `json:"tombstone,omitempty" cborgen:"tombstone,omitempty"`
116116+}
117117+118118+// ModerationDefs_ImageDetails is a "imageDetails" in the tools.ozone.moderation.defs schema.
119119+//
120120+// RECORDTYPE: ModerationDefs_ImageDetails
121121+type ModerationDefs_ImageDetails struct {
122122+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#imageDetails" cborgen:"$type,const=tools.ozone.moderation.defs#imageDetails"`
123123+ Height int64 `json:"height" cborgen:"height"`
124124+ Width int64 `json:"width" cborgen:"width"`
125125+}
126126+127127+// ModerationDefs_ModEventAcknowledge is a "modEventAcknowledge" in the tools.ozone.moderation.defs schema.
128128+//
129129+// RECORDTYPE: ModerationDefs_ModEventAcknowledge
130130+type ModerationDefs_ModEventAcknowledge struct {
131131+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventAcknowledge" cborgen:"$type,const=tools.ozone.moderation.defs#modEventAcknowledge"`
132132+ // acknowledgeAccountSubjects: If true, all other reports on content authored by this account will be resolved (acknowledged).
133133+ AcknowledgeAccountSubjects *bool `json:"acknowledgeAccountSubjects,omitempty" cborgen:"acknowledgeAccountSubjects,omitempty"`
134134+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
135135+}
136136+137137+// ModerationDefs_ModEventComment is a "modEventComment" in the tools.ozone.moderation.defs schema.
138138+//
139139+// Add a comment to a subject. An empty comment will clear any previously set sticky comment.
140140+//
141141+// RECORDTYPE: ModerationDefs_ModEventComment
142142+type ModerationDefs_ModEventComment struct {
143143+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventComment" cborgen:"$type,const=tools.ozone.moderation.defs#modEventComment"`
144144+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
145145+ // sticky: Make the comment persistent on the subject
146146+ Sticky *bool `json:"sticky,omitempty" cborgen:"sticky,omitempty"`
147147+}
148148+149149+// ModerationDefs_ModEventDivert is a "modEventDivert" in the tools.ozone.moderation.defs schema.
150150+//
151151+// Divert a record's blobs to a 3rd party service for further scanning/tagging
152152+//
153153+// RECORDTYPE: ModerationDefs_ModEventDivert
154154+type ModerationDefs_ModEventDivert struct {
155155+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventDivert" cborgen:"$type,const=tools.ozone.moderation.defs#modEventDivert"`
156156+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
157157+}
158158+159159+// ModerationDefs_ModEventEmail is a "modEventEmail" in the tools.ozone.moderation.defs schema.
160160+//
161161+// # Keep a log of outgoing email to a user
162162+//
163163+// RECORDTYPE: ModerationDefs_ModEventEmail
164164+type ModerationDefs_ModEventEmail struct {
165165+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventEmail" cborgen:"$type,const=tools.ozone.moderation.defs#modEventEmail"`
166166+ // comment: Additional comment about the outgoing comm.
167167+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
168168+ // content: The content of the email sent to the user.
169169+ Content *string `json:"content,omitempty" cborgen:"content,omitempty"`
170170+ // subjectLine: The subject line of the email sent to the user.
171171+ SubjectLine string `json:"subjectLine" cborgen:"subjectLine"`
172172+}
173173+174174+// ModerationDefs_ModEventEscalate is a "modEventEscalate" in the tools.ozone.moderation.defs schema.
175175+//
176176+// RECORDTYPE: ModerationDefs_ModEventEscalate
177177+type ModerationDefs_ModEventEscalate struct {
178178+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventEscalate" cborgen:"$type,const=tools.ozone.moderation.defs#modEventEscalate"`
179179+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
180180+}
181181+182182+// ModerationDefs_ModEventLabel is a "modEventLabel" in the tools.ozone.moderation.defs schema.
183183+//
184184+// Apply/Negate labels on a subject
185185+//
186186+// RECORDTYPE: ModerationDefs_ModEventLabel
187187+type ModerationDefs_ModEventLabel struct {
188188+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventLabel" cborgen:"$type,const=tools.ozone.moderation.defs#modEventLabel"`
189189+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
190190+ CreateLabelVals []string `json:"createLabelVals" cborgen:"createLabelVals"`
191191+ // durationInHours: Indicates how long the label will remain on the subject. Only applies on labels that are being added.
192192+ DurationInHours *int64 `json:"durationInHours,omitempty" cborgen:"durationInHours,omitempty"`
193193+ NegateLabelVals []string `json:"negateLabelVals" cborgen:"negateLabelVals"`
194194+}
195195+196196+// ModerationDefs_ModEventMute is a "modEventMute" in the tools.ozone.moderation.defs schema.
197197+//
198198+// # Mute incoming reports on a subject
199199+//
200200+// RECORDTYPE: ModerationDefs_ModEventMute
201201+type ModerationDefs_ModEventMute struct {
202202+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventMute" cborgen:"$type,const=tools.ozone.moderation.defs#modEventMute"`
203203+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
204204+ // durationInHours: Indicates how long the subject should remain muted.
205205+ DurationInHours int64 `json:"durationInHours" cborgen:"durationInHours"`
206206+}
207207+208208+// ModerationDefs_ModEventMuteReporter is a "modEventMuteReporter" in the tools.ozone.moderation.defs schema.
209209+//
210210+// # Mute incoming reports from an account
211211+//
212212+// RECORDTYPE: ModerationDefs_ModEventMuteReporter
213213+type ModerationDefs_ModEventMuteReporter struct {
214214+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventMuteReporter" cborgen:"$type,const=tools.ozone.moderation.defs#modEventMuteReporter"`
215215+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
216216+ // durationInHours: Indicates how long the account should remain muted. Falsy value here means a permanent mute.
217217+ DurationInHours *int64 `json:"durationInHours,omitempty" cborgen:"durationInHours,omitempty"`
218218+}
219219+220220+// ModerationDefs_ModEventPriorityScore is a "modEventPriorityScore" in the tools.ozone.moderation.defs schema.
221221+//
222222+// Set priority score of the subject. Higher score means higher priority.
223223+//
224224+// RECORDTYPE: ModerationDefs_ModEventPriorityScore
225225+type ModerationDefs_ModEventPriorityScore struct {
226226+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventPriorityScore" cborgen:"$type,const=tools.ozone.moderation.defs#modEventPriorityScore"`
227227+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
228228+ Score int64 `json:"score" cborgen:"score"`
229229+}
230230+231231+// ModerationDefs_ModEventReport is a "modEventReport" in the tools.ozone.moderation.defs schema.
232232+//
233233+// # Report a subject
234234+//
235235+// RECORDTYPE: ModerationDefs_ModEventReport
236236+type ModerationDefs_ModEventReport struct {
237237+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventReport" cborgen:"$type,const=tools.ozone.moderation.defs#modEventReport"`
238238+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
239239+ // isReporterMuted: Set to true if the reporter was muted from reporting at the time of the event. These reports won't impact the reviewState of the subject.
240240+ IsReporterMuted *bool `json:"isReporterMuted,omitempty" cborgen:"isReporterMuted,omitempty"`
241241+ ReportType *string `json:"reportType" cborgen:"reportType"`
242242+}
243243+244244+// ModerationDefs_ModEventResolveAppeal is a "modEventResolveAppeal" in the tools.ozone.moderation.defs schema.
245245+//
246246+// # Resolve appeal on a subject
247247+//
248248+// RECORDTYPE: ModerationDefs_ModEventResolveAppeal
249249+type ModerationDefs_ModEventResolveAppeal struct {
250250+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventResolveAppeal" cborgen:"$type,const=tools.ozone.moderation.defs#modEventResolveAppeal"`
251251+ // comment: Describe resolution.
252252+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
253253+}
254254+255255+// ModerationDefs_ModEventReverseTakedown is a "modEventReverseTakedown" in the tools.ozone.moderation.defs schema.
256256+//
257257+// # Revert take down action on a subject
258258+//
259259+// RECORDTYPE: ModerationDefs_ModEventReverseTakedown
260260+type ModerationDefs_ModEventReverseTakedown struct {
261261+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventReverseTakedown" cborgen:"$type,const=tools.ozone.moderation.defs#modEventReverseTakedown"`
262262+ // comment: Describe reasoning behind the reversal.
263263+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
264264+}
265265+266266+// ModerationDefs_ModEventTag is a "modEventTag" in the tools.ozone.moderation.defs schema.
267267+//
268268+// Add/Remove a tag on a subject
269269+//
270270+// RECORDTYPE: ModerationDefs_ModEventTag
271271+type ModerationDefs_ModEventTag struct {
272272+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventTag" cborgen:"$type,const=tools.ozone.moderation.defs#modEventTag"`
273273+ // add: Tags to be added to the subject. If already exists, won't be duplicated.
274274+ Add []string `json:"add" cborgen:"add"`
275275+ // comment: Additional comment about added/removed tags.
276276+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
277277+ // remove: Tags to be removed to the subject. Ignores a tag If it doesn't exist, won't be duplicated.
278278+ Remove []string `json:"remove" cborgen:"remove"`
279279+}
280280+281281+// ModerationDefs_ModEventTakedown is a "modEventTakedown" in the tools.ozone.moderation.defs schema.
282282+//
283283+// # Take down a subject permanently or temporarily
284284+//
285285+// RECORDTYPE: ModerationDefs_ModEventTakedown
286286+type ModerationDefs_ModEventTakedown struct {
287287+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventTakedown" cborgen:"$type,const=tools.ozone.moderation.defs#modEventTakedown"`
288288+ // acknowledgeAccountSubjects: If true, all other reports on content authored by this account will be resolved (acknowledged).
289289+ AcknowledgeAccountSubjects *bool `json:"acknowledgeAccountSubjects,omitempty" cborgen:"acknowledgeAccountSubjects,omitempty"`
290290+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
291291+ // durationInHours: Indicates how long the takedown should be in effect before automatically expiring.
292292+ DurationInHours *int64 `json:"durationInHours,omitempty" cborgen:"durationInHours,omitempty"`
293293+ // policies: Names/Keywords of the policies that drove the decision.
294294+ Policies []string `json:"policies,omitempty" cborgen:"policies,omitempty"`
295295+}
296296+297297+// ModerationDefs_ModEventUnmute is a "modEventUnmute" in the tools.ozone.moderation.defs schema.
298298+//
299299+// # Unmute action on a subject
300300+//
301301+// RECORDTYPE: ModerationDefs_ModEventUnmute
302302+type ModerationDefs_ModEventUnmute struct {
303303+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventUnmute" cborgen:"$type,const=tools.ozone.moderation.defs#modEventUnmute"`
304304+ // comment: Describe reasoning behind the reversal.
305305+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
306306+}
307307+308308+// ModerationDefs_ModEventUnmuteReporter is a "modEventUnmuteReporter" in the tools.ozone.moderation.defs schema.
309309+//
310310+// # Unmute incoming reports from an account
311311+//
312312+// RECORDTYPE: ModerationDefs_ModEventUnmuteReporter
313313+type ModerationDefs_ModEventUnmuteReporter struct {
314314+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventUnmuteReporter" cborgen:"$type,const=tools.ozone.moderation.defs#modEventUnmuteReporter"`
315315+ // comment: Describe reasoning behind the reversal.
316316+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
317317+}
318318+319319+// ModerationDefs_ModEventView is a "modEventView" in the tools.ozone.moderation.defs schema.
320320+type ModerationDefs_ModEventView struct {
321321+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
322322+ CreatedBy string `json:"createdBy" cborgen:"createdBy"`
323323+ CreatorHandle *string `json:"creatorHandle,omitempty" cborgen:"creatorHandle,omitempty"`
324324+ Event *ModerationDefs_ModEventView_Event `json:"event" cborgen:"event"`
325325+ Id int64 `json:"id" cborgen:"id"`
326326+ Subject *ModerationDefs_ModEventView_Subject `json:"subject" cborgen:"subject"`
327327+ SubjectBlobCids []string `json:"subjectBlobCids" cborgen:"subjectBlobCids"`
328328+ SubjectHandle *string `json:"subjectHandle,omitempty" cborgen:"subjectHandle,omitempty"`
329329+}
330330+331331+// ModerationDefs_ModEventViewDetail is a "modEventViewDetail" in the tools.ozone.moderation.defs schema.
332332+type ModerationDefs_ModEventViewDetail struct {
333333+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
334334+ CreatedBy string `json:"createdBy" cborgen:"createdBy"`
335335+ Event *ModerationDefs_ModEventViewDetail_Event `json:"event" cborgen:"event"`
336336+ Id int64 `json:"id" cborgen:"id"`
337337+ Subject *ModerationDefs_ModEventViewDetail_Subject `json:"subject" cborgen:"subject"`
338338+ SubjectBlobs []*ModerationDefs_BlobView `json:"subjectBlobs" cborgen:"subjectBlobs"`
339339+}
340340+341341+type ModerationDefs_ModEventViewDetail_Event struct {
342342+ ModerationDefs_ModEventTakedown *ModerationDefs_ModEventTakedown
343343+ ModerationDefs_ModEventReverseTakedown *ModerationDefs_ModEventReverseTakedown
344344+ ModerationDefs_ModEventComment *ModerationDefs_ModEventComment
345345+ ModerationDefs_ModEventReport *ModerationDefs_ModEventReport
346346+ ModerationDefs_ModEventLabel *ModerationDefs_ModEventLabel
347347+ ModerationDefs_ModEventAcknowledge *ModerationDefs_ModEventAcknowledge
348348+ ModerationDefs_ModEventEscalate *ModerationDefs_ModEventEscalate
349349+ ModerationDefs_ModEventMute *ModerationDefs_ModEventMute
350350+ ModerationDefs_ModEventUnmute *ModerationDefs_ModEventUnmute
351351+ ModerationDefs_ModEventMuteReporter *ModerationDefs_ModEventMuteReporter
352352+ ModerationDefs_ModEventUnmuteReporter *ModerationDefs_ModEventUnmuteReporter
353353+ ModerationDefs_ModEventEmail *ModerationDefs_ModEventEmail
354354+ ModerationDefs_ModEventResolveAppeal *ModerationDefs_ModEventResolveAppeal
355355+ ModerationDefs_ModEventDivert *ModerationDefs_ModEventDivert
356356+ ModerationDefs_ModEventTag *ModerationDefs_ModEventTag
357357+ ModerationDefs_AccountEvent *ModerationDefs_AccountEvent
358358+ ModerationDefs_IdentityEvent *ModerationDefs_IdentityEvent
359359+ ModerationDefs_RecordEvent *ModerationDefs_RecordEvent
360360+ ModerationDefs_ModEventPriorityScore *ModerationDefs_ModEventPriorityScore
361361+}
362362+363363+func (t *ModerationDefs_ModEventViewDetail_Event) MarshalJSON() ([]byte, error) {
364364+ if t.ModerationDefs_ModEventTakedown != nil {
365365+ t.ModerationDefs_ModEventTakedown.LexiconTypeID = "tools.ozone.moderation.defs#modEventTakedown"
366366+ return json.Marshal(t.ModerationDefs_ModEventTakedown)
367367+ }
368368+ if t.ModerationDefs_ModEventReverseTakedown != nil {
369369+ t.ModerationDefs_ModEventReverseTakedown.LexiconTypeID = "tools.ozone.moderation.defs#modEventReverseTakedown"
370370+ return json.Marshal(t.ModerationDefs_ModEventReverseTakedown)
371371+ }
372372+ if t.ModerationDefs_ModEventComment != nil {
373373+ t.ModerationDefs_ModEventComment.LexiconTypeID = "tools.ozone.moderation.defs#modEventComment"
374374+ return json.Marshal(t.ModerationDefs_ModEventComment)
375375+ }
376376+ if t.ModerationDefs_ModEventReport != nil {
377377+ t.ModerationDefs_ModEventReport.LexiconTypeID = "tools.ozone.moderation.defs#modEventReport"
378378+ return json.Marshal(t.ModerationDefs_ModEventReport)
379379+ }
380380+ if t.ModerationDefs_ModEventLabel != nil {
381381+ t.ModerationDefs_ModEventLabel.LexiconTypeID = "tools.ozone.moderation.defs#modEventLabel"
382382+ return json.Marshal(t.ModerationDefs_ModEventLabel)
383383+ }
384384+ if t.ModerationDefs_ModEventAcknowledge != nil {
385385+ t.ModerationDefs_ModEventAcknowledge.LexiconTypeID = "tools.ozone.moderation.defs#modEventAcknowledge"
386386+ return json.Marshal(t.ModerationDefs_ModEventAcknowledge)
387387+ }
388388+ if t.ModerationDefs_ModEventEscalate != nil {
389389+ t.ModerationDefs_ModEventEscalate.LexiconTypeID = "tools.ozone.moderation.defs#modEventEscalate"
390390+ return json.Marshal(t.ModerationDefs_ModEventEscalate)
391391+ }
392392+ if t.ModerationDefs_ModEventMute != nil {
393393+ t.ModerationDefs_ModEventMute.LexiconTypeID = "tools.ozone.moderation.defs#modEventMute"
394394+ return json.Marshal(t.ModerationDefs_ModEventMute)
395395+ }
396396+ if t.ModerationDefs_ModEventUnmute != nil {
397397+ t.ModerationDefs_ModEventUnmute.LexiconTypeID = "tools.ozone.moderation.defs#modEventUnmute"
398398+ return json.Marshal(t.ModerationDefs_ModEventUnmute)
399399+ }
400400+ if t.ModerationDefs_ModEventMuteReporter != nil {
401401+ t.ModerationDefs_ModEventMuteReporter.LexiconTypeID = "tools.ozone.moderation.defs#modEventMuteReporter"
402402+ return json.Marshal(t.ModerationDefs_ModEventMuteReporter)
403403+ }
404404+ if t.ModerationDefs_ModEventUnmuteReporter != nil {
405405+ t.ModerationDefs_ModEventUnmuteReporter.LexiconTypeID = "tools.ozone.moderation.defs#modEventUnmuteReporter"
406406+ return json.Marshal(t.ModerationDefs_ModEventUnmuteReporter)
407407+ }
408408+ if t.ModerationDefs_ModEventEmail != nil {
409409+ t.ModerationDefs_ModEventEmail.LexiconTypeID = "tools.ozone.moderation.defs#modEventEmail"
410410+ return json.Marshal(t.ModerationDefs_ModEventEmail)
411411+ }
412412+ if t.ModerationDefs_ModEventResolveAppeal != nil {
413413+ t.ModerationDefs_ModEventResolveAppeal.LexiconTypeID = "tools.ozone.moderation.defs#modEventResolveAppeal"
414414+ return json.Marshal(t.ModerationDefs_ModEventResolveAppeal)
415415+ }
416416+ if t.ModerationDefs_ModEventDivert != nil {
417417+ t.ModerationDefs_ModEventDivert.LexiconTypeID = "tools.ozone.moderation.defs#modEventDivert"
418418+ return json.Marshal(t.ModerationDefs_ModEventDivert)
419419+ }
420420+ if t.ModerationDefs_ModEventTag != nil {
421421+ t.ModerationDefs_ModEventTag.LexiconTypeID = "tools.ozone.moderation.defs#modEventTag"
422422+ return json.Marshal(t.ModerationDefs_ModEventTag)
423423+ }
424424+ if t.ModerationDefs_AccountEvent != nil {
425425+ t.ModerationDefs_AccountEvent.LexiconTypeID = "tools.ozone.moderation.defs#accountEvent"
426426+ return json.Marshal(t.ModerationDefs_AccountEvent)
427427+ }
428428+ if t.ModerationDefs_IdentityEvent != nil {
429429+ t.ModerationDefs_IdentityEvent.LexiconTypeID = "tools.ozone.moderation.defs#identityEvent"
430430+ return json.Marshal(t.ModerationDefs_IdentityEvent)
431431+ }
432432+ if t.ModerationDefs_RecordEvent != nil {
433433+ t.ModerationDefs_RecordEvent.LexiconTypeID = "tools.ozone.moderation.defs#recordEvent"
434434+ return json.Marshal(t.ModerationDefs_RecordEvent)
435435+ }
436436+ if t.ModerationDefs_ModEventPriorityScore != nil {
437437+ t.ModerationDefs_ModEventPriorityScore.LexiconTypeID = "tools.ozone.moderation.defs#modEventPriorityScore"
438438+ return json.Marshal(t.ModerationDefs_ModEventPriorityScore)
439439+ }
440440+ return nil, fmt.Errorf("cannot marshal empty enum")
441441+}
442442+func (t *ModerationDefs_ModEventViewDetail_Event) UnmarshalJSON(b []byte) error {
443443+ typ, err := util.TypeExtract(b)
444444+ if err != nil {
445445+ return err
446446+ }
447447+448448+ switch typ {
449449+ case "tools.ozone.moderation.defs#modEventTakedown":
450450+ t.ModerationDefs_ModEventTakedown = new(ModerationDefs_ModEventTakedown)
451451+ return json.Unmarshal(b, t.ModerationDefs_ModEventTakedown)
452452+ case "tools.ozone.moderation.defs#modEventReverseTakedown":
453453+ t.ModerationDefs_ModEventReverseTakedown = new(ModerationDefs_ModEventReverseTakedown)
454454+ return json.Unmarshal(b, t.ModerationDefs_ModEventReverseTakedown)
455455+ case "tools.ozone.moderation.defs#modEventComment":
456456+ t.ModerationDefs_ModEventComment = new(ModerationDefs_ModEventComment)
457457+ return json.Unmarshal(b, t.ModerationDefs_ModEventComment)
458458+ case "tools.ozone.moderation.defs#modEventReport":
459459+ t.ModerationDefs_ModEventReport = new(ModerationDefs_ModEventReport)
460460+ return json.Unmarshal(b, t.ModerationDefs_ModEventReport)
461461+ case "tools.ozone.moderation.defs#modEventLabel":
462462+ t.ModerationDefs_ModEventLabel = new(ModerationDefs_ModEventLabel)
463463+ return json.Unmarshal(b, t.ModerationDefs_ModEventLabel)
464464+ case "tools.ozone.moderation.defs#modEventAcknowledge":
465465+ t.ModerationDefs_ModEventAcknowledge = new(ModerationDefs_ModEventAcknowledge)
466466+ return json.Unmarshal(b, t.ModerationDefs_ModEventAcknowledge)
467467+ case "tools.ozone.moderation.defs#modEventEscalate":
468468+ t.ModerationDefs_ModEventEscalate = new(ModerationDefs_ModEventEscalate)
469469+ return json.Unmarshal(b, t.ModerationDefs_ModEventEscalate)
470470+ case "tools.ozone.moderation.defs#modEventMute":
471471+ t.ModerationDefs_ModEventMute = new(ModerationDefs_ModEventMute)
472472+ return json.Unmarshal(b, t.ModerationDefs_ModEventMute)
473473+ case "tools.ozone.moderation.defs#modEventUnmute":
474474+ t.ModerationDefs_ModEventUnmute = new(ModerationDefs_ModEventUnmute)
475475+ return json.Unmarshal(b, t.ModerationDefs_ModEventUnmute)
476476+ case "tools.ozone.moderation.defs#modEventMuteReporter":
477477+ t.ModerationDefs_ModEventMuteReporter = new(ModerationDefs_ModEventMuteReporter)
478478+ return json.Unmarshal(b, t.ModerationDefs_ModEventMuteReporter)
479479+ case "tools.ozone.moderation.defs#modEventUnmuteReporter":
480480+ t.ModerationDefs_ModEventUnmuteReporter = new(ModerationDefs_ModEventUnmuteReporter)
481481+ return json.Unmarshal(b, t.ModerationDefs_ModEventUnmuteReporter)
482482+ case "tools.ozone.moderation.defs#modEventEmail":
483483+ t.ModerationDefs_ModEventEmail = new(ModerationDefs_ModEventEmail)
484484+ return json.Unmarshal(b, t.ModerationDefs_ModEventEmail)
485485+ case "tools.ozone.moderation.defs#modEventResolveAppeal":
486486+ t.ModerationDefs_ModEventResolveAppeal = new(ModerationDefs_ModEventResolveAppeal)
487487+ return json.Unmarshal(b, t.ModerationDefs_ModEventResolveAppeal)
488488+ case "tools.ozone.moderation.defs#modEventDivert":
489489+ t.ModerationDefs_ModEventDivert = new(ModerationDefs_ModEventDivert)
490490+ return json.Unmarshal(b, t.ModerationDefs_ModEventDivert)
491491+ case "tools.ozone.moderation.defs#modEventTag":
492492+ t.ModerationDefs_ModEventTag = new(ModerationDefs_ModEventTag)
493493+ return json.Unmarshal(b, t.ModerationDefs_ModEventTag)
494494+ case "tools.ozone.moderation.defs#accountEvent":
495495+ t.ModerationDefs_AccountEvent = new(ModerationDefs_AccountEvent)
496496+ return json.Unmarshal(b, t.ModerationDefs_AccountEvent)
497497+ case "tools.ozone.moderation.defs#identityEvent":
498498+ t.ModerationDefs_IdentityEvent = new(ModerationDefs_IdentityEvent)
499499+ return json.Unmarshal(b, t.ModerationDefs_IdentityEvent)
500500+ case "tools.ozone.moderation.defs#recordEvent":
501501+ t.ModerationDefs_RecordEvent = new(ModerationDefs_RecordEvent)
502502+ return json.Unmarshal(b, t.ModerationDefs_RecordEvent)
503503+ case "tools.ozone.moderation.defs#modEventPriorityScore":
504504+ t.ModerationDefs_ModEventPriorityScore = new(ModerationDefs_ModEventPriorityScore)
505505+ return json.Unmarshal(b, t.ModerationDefs_ModEventPriorityScore)
506506+507507+ default:
508508+ return nil
509509+ }
510510+}
511511+512512+type ModerationDefs_ModEventViewDetail_Subject struct {
513513+ ModerationDefs_RepoView *ModerationDefs_RepoView
514514+ ModerationDefs_RepoViewNotFound *ModerationDefs_RepoViewNotFound
515515+ ModerationDefs_RecordView *ModerationDefs_RecordView
516516+ ModerationDefs_RecordViewNotFound *ModerationDefs_RecordViewNotFound
517517+}
518518+519519+func (t *ModerationDefs_ModEventViewDetail_Subject) MarshalJSON() ([]byte, error) {
520520+ if t.ModerationDefs_RepoView != nil {
521521+ t.ModerationDefs_RepoView.LexiconTypeID = "tools.ozone.moderation.defs#repoView"
522522+ return json.Marshal(t.ModerationDefs_RepoView)
523523+ }
524524+ if t.ModerationDefs_RepoViewNotFound != nil {
525525+ t.ModerationDefs_RepoViewNotFound.LexiconTypeID = "tools.ozone.moderation.defs#repoViewNotFound"
526526+ return json.Marshal(t.ModerationDefs_RepoViewNotFound)
527527+ }
528528+ if t.ModerationDefs_RecordView != nil {
529529+ t.ModerationDefs_RecordView.LexiconTypeID = "tools.ozone.moderation.defs#recordView"
530530+ return json.Marshal(t.ModerationDefs_RecordView)
531531+ }
532532+ if t.ModerationDefs_RecordViewNotFound != nil {
533533+ t.ModerationDefs_RecordViewNotFound.LexiconTypeID = "tools.ozone.moderation.defs#recordViewNotFound"
534534+ return json.Marshal(t.ModerationDefs_RecordViewNotFound)
535535+ }
536536+ return nil, fmt.Errorf("cannot marshal empty enum")
537537+}
538538+func (t *ModerationDefs_ModEventViewDetail_Subject) UnmarshalJSON(b []byte) error {
539539+ typ, err := util.TypeExtract(b)
540540+ if err != nil {
541541+ return err
542542+ }
543543+544544+ switch typ {
545545+ case "tools.ozone.moderation.defs#repoView":
546546+ t.ModerationDefs_RepoView = new(ModerationDefs_RepoView)
547547+ return json.Unmarshal(b, t.ModerationDefs_RepoView)
548548+ case "tools.ozone.moderation.defs#repoViewNotFound":
549549+ t.ModerationDefs_RepoViewNotFound = new(ModerationDefs_RepoViewNotFound)
550550+ return json.Unmarshal(b, t.ModerationDefs_RepoViewNotFound)
551551+ case "tools.ozone.moderation.defs#recordView":
552552+ t.ModerationDefs_RecordView = new(ModerationDefs_RecordView)
553553+ return json.Unmarshal(b, t.ModerationDefs_RecordView)
554554+ case "tools.ozone.moderation.defs#recordViewNotFound":
555555+ t.ModerationDefs_RecordViewNotFound = new(ModerationDefs_RecordViewNotFound)
556556+ return json.Unmarshal(b, t.ModerationDefs_RecordViewNotFound)
557557+558558+ default:
559559+ return nil
560560+ }
561561+}
562562+563563+type ModerationDefs_ModEventView_Event struct {
564564+ ModerationDefs_ModEventTakedown *ModerationDefs_ModEventTakedown
565565+ ModerationDefs_ModEventReverseTakedown *ModerationDefs_ModEventReverseTakedown
566566+ ModerationDefs_ModEventComment *ModerationDefs_ModEventComment
567567+ ModerationDefs_ModEventReport *ModerationDefs_ModEventReport
568568+ ModerationDefs_ModEventLabel *ModerationDefs_ModEventLabel
569569+ ModerationDefs_ModEventAcknowledge *ModerationDefs_ModEventAcknowledge
570570+ ModerationDefs_ModEventEscalate *ModerationDefs_ModEventEscalate
571571+ ModerationDefs_ModEventMute *ModerationDefs_ModEventMute
572572+ ModerationDefs_ModEventUnmute *ModerationDefs_ModEventUnmute
573573+ ModerationDefs_ModEventMuteReporter *ModerationDefs_ModEventMuteReporter
574574+ ModerationDefs_ModEventUnmuteReporter *ModerationDefs_ModEventUnmuteReporter
575575+ ModerationDefs_ModEventEmail *ModerationDefs_ModEventEmail
576576+ ModerationDefs_ModEventResolveAppeal *ModerationDefs_ModEventResolveAppeal
577577+ ModerationDefs_ModEventDivert *ModerationDefs_ModEventDivert
578578+ ModerationDefs_ModEventTag *ModerationDefs_ModEventTag
579579+ ModerationDefs_AccountEvent *ModerationDefs_AccountEvent
580580+ ModerationDefs_IdentityEvent *ModerationDefs_IdentityEvent
581581+ ModerationDefs_RecordEvent *ModerationDefs_RecordEvent
582582+ ModerationDefs_ModEventPriorityScore *ModerationDefs_ModEventPriorityScore
583583+}
584584+585585+func (t *ModerationDefs_ModEventView_Event) MarshalJSON() ([]byte, error) {
586586+ if t.ModerationDefs_ModEventTakedown != nil {
587587+ t.ModerationDefs_ModEventTakedown.LexiconTypeID = "tools.ozone.moderation.defs#modEventTakedown"
588588+ return json.Marshal(t.ModerationDefs_ModEventTakedown)
589589+ }
590590+ if t.ModerationDefs_ModEventReverseTakedown != nil {
591591+ t.ModerationDefs_ModEventReverseTakedown.LexiconTypeID = "tools.ozone.moderation.defs#modEventReverseTakedown"
592592+ return json.Marshal(t.ModerationDefs_ModEventReverseTakedown)
593593+ }
594594+ if t.ModerationDefs_ModEventComment != nil {
595595+ t.ModerationDefs_ModEventComment.LexiconTypeID = "tools.ozone.moderation.defs#modEventComment"
596596+ return json.Marshal(t.ModerationDefs_ModEventComment)
597597+ }
598598+ if t.ModerationDefs_ModEventReport != nil {
599599+ t.ModerationDefs_ModEventReport.LexiconTypeID = "tools.ozone.moderation.defs#modEventReport"
600600+ return json.Marshal(t.ModerationDefs_ModEventReport)
601601+ }
602602+ if t.ModerationDefs_ModEventLabel != nil {
603603+ t.ModerationDefs_ModEventLabel.LexiconTypeID = "tools.ozone.moderation.defs#modEventLabel"
604604+ return json.Marshal(t.ModerationDefs_ModEventLabel)
605605+ }
606606+ if t.ModerationDefs_ModEventAcknowledge != nil {
607607+ t.ModerationDefs_ModEventAcknowledge.LexiconTypeID = "tools.ozone.moderation.defs#modEventAcknowledge"
608608+ return json.Marshal(t.ModerationDefs_ModEventAcknowledge)
609609+ }
610610+ if t.ModerationDefs_ModEventEscalate != nil {
611611+ t.ModerationDefs_ModEventEscalate.LexiconTypeID = "tools.ozone.moderation.defs#modEventEscalate"
612612+ return json.Marshal(t.ModerationDefs_ModEventEscalate)
613613+ }
614614+ if t.ModerationDefs_ModEventMute != nil {
615615+ t.ModerationDefs_ModEventMute.LexiconTypeID = "tools.ozone.moderation.defs#modEventMute"
616616+ return json.Marshal(t.ModerationDefs_ModEventMute)
617617+ }
618618+ if t.ModerationDefs_ModEventUnmute != nil {
619619+ t.ModerationDefs_ModEventUnmute.LexiconTypeID = "tools.ozone.moderation.defs#modEventUnmute"
620620+ return json.Marshal(t.ModerationDefs_ModEventUnmute)
621621+ }
622622+ if t.ModerationDefs_ModEventMuteReporter != nil {
623623+ t.ModerationDefs_ModEventMuteReporter.LexiconTypeID = "tools.ozone.moderation.defs#modEventMuteReporter"
624624+ return json.Marshal(t.ModerationDefs_ModEventMuteReporter)
625625+ }
626626+ if t.ModerationDefs_ModEventUnmuteReporter != nil {
627627+ t.ModerationDefs_ModEventUnmuteReporter.LexiconTypeID = "tools.ozone.moderation.defs#modEventUnmuteReporter"
628628+ return json.Marshal(t.ModerationDefs_ModEventUnmuteReporter)
629629+ }
630630+ if t.ModerationDefs_ModEventEmail != nil {
631631+ t.ModerationDefs_ModEventEmail.LexiconTypeID = "tools.ozone.moderation.defs#modEventEmail"
632632+ return json.Marshal(t.ModerationDefs_ModEventEmail)
633633+ }
634634+ if t.ModerationDefs_ModEventResolveAppeal != nil {
635635+ t.ModerationDefs_ModEventResolveAppeal.LexiconTypeID = "tools.ozone.moderation.defs#modEventResolveAppeal"
636636+ return json.Marshal(t.ModerationDefs_ModEventResolveAppeal)
637637+ }
638638+ if t.ModerationDefs_ModEventDivert != nil {
639639+ t.ModerationDefs_ModEventDivert.LexiconTypeID = "tools.ozone.moderation.defs#modEventDivert"
640640+ return json.Marshal(t.ModerationDefs_ModEventDivert)
641641+ }
642642+ if t.ModerationDefs_ModEventTag != nil {
643643+ t.ModerationDefs_ModEventTag.LexiconTypeID = "tools.ozone.moderation.defs#modEventTag"
644644+ return json.Marshal(t.ModerationDefs_ModEventTag)
645645+ }
646646+ if t.ModerationDefs_AccountEvent != nil {
647647+ t.ModerationDefs_AccountEvent.LexiconTypeID = "tools.ozone.moderation.defs#accountEvent"
648648+ return json.Marshal(t.ModerationDefs_AccountEvent)
649649+ }
650650+ if t.ModerationDefs_IdentityEvent != nil {
651651+ t.ModerationDefs_IdentityEvent.LexiconTypeID = "tools.ozone.moderation.defs#identityEvent"
652652+ return json.Marshal(t.ModerationDefs_IdentityEvent)
653653+ }
654654+ if t.ModerationDefs_RecordEvent != nil {
655655+ t.ModerationDefs_RecordEvent.LexiconTypeID = "tools.ozone.moderation.defs#recordEvent"
656656+ return json.Marshal(t.ModerationDefs_RecordEvent)
657657+ }
658658+ if t.ModerationDefs_ModEventPriorityScore != nil {
659659+ t.ModerationDefs_ModEventPriorityScore.LexiconTypeID = "tools.ozone.moderation.defs#modEventPriorityScore"
660660+ return json.Marshal(t.ModerationDefs_ModEventPriorityScore)
661661+ }
662662+ return nil, fmt.Errorf("cannot marshal empty enum")
663663+}
664664+func (t *ModerationDefs_ModEventView_Event) UnmarshalJSON(b []byte) error {
665665+ typ, err := util.TypeExtract(b)
666666+ if err != nil {
667667+ return err
668668+ }
669669+670670+ switch typ {
671671+ case "tools.ozone.moderation.defs#modEventTakedown":
672672+ t.ModerationDefs_ModEventTakedown = new(ModerationDefs_ModEventTakedown)
673673+ return json.Unmarshal(b, t.ModerationDefs_ModEventTakedown)
674674+ case "tools.ozone.moderation.defs#modEventReverseTakedown":
675675+ t.ModerationDefs_ModEventReverseTakedown = new(ModerationDefs_ModEventReverseTakedown)
676676+ return json.Unmarshal(b, t.ModerationDefs_ModEventReverseTakedown)
677677+ case "tools.ozone.moderation.defs#modEventComment":
678678+ t.ModerationDefs_ModEventComment = new(ModerationDefs_ModEventComment)
679679+ return json.Unmarshal(b, t.ModerationDefs_ModEventComment)
680680+ case "tools.ozone.moderation.defs#modEventReport":
681681+ t.ModerationDefs_ModEventReport = new(ModerationDefs_ModEventReport)
682682+ return json.Unmarshal(b, t.ModerationDefs_ModEventReport)
683683+ case "tools.ozone.moderation.defs#modEventLabel":
684684+ t.ModerationDefs_ModEventLabel = new(ModerationDefs_ModEventLabel)
685685+ return json.Unmarshal(b, t.ModerationDefs_ModEventLabel)
686686+ case "tools.ozone.moderation.defs#modEventAcknowledge":
687687+ t.ModerationDefs_ModEventAcknowledge = new(ModerationDefs_ModEventAcknowledge)
688688+ return json.Unmarshal(b, t.ModerationDefs_ModEventAcknowledge)
689689+ case "tools.ozone.moderation.defs#modEventEscalate":
690690+ t.ModerationDefs_ModEventEscalate = new(ModerationDefs_ModEventEscalate)
691691+ return json.Unmarshal(b, t.ModerationDefs_ModEventEscalate)
692692+ case "tools.ozone.moderation.defs#modEventMute":
693693+ t.ModerationDefs_ModEventMute = new(ModerationDefs_ModEventMute)
694694+ return json.Unmarshal(b, t.ModerationDefs_ModEventMute)
695695+ case "tools.ozone.moderation.defs#modEventUnmute":
696696+ t.ModerationDefs_ModEventUnmute = new(ModerationDefs_ModEventUnmute)
697697+ return json.Unmarshal(b, t.ModerationDefs_ModEventUnmute)
698698+ case "tools.ozone.moderation.defs#modEventMuteReporter":
699699+ t.ModerationDefs_ModEventMuteReporter = new(ModerationDefs_ModEventMuteReporter)
700700+ return json.Unmarshal(b, t.ModerationDefs_ModEventMuteReporter)
701701+ case "tools.ozone.moderation.defs#modEventUnmuteReporter":
702702+ t.ModerationDefs_ModEventUnmuteReporter = new(ModerationDefs_ModEventUnmuteReporter)
703703+ return json.Unmarshal(b, t.ModerationDefs_ModEventUnmuteReporter)
704704+ case "tools.ozone.moderation.defs#modEventEmail":
705705+ t.ModerationDefs_ModEventEmail = new(ModerationDefs_ModEventEmail)
706706+ return json.Unmarshal(b, t.ModerationDefs_ModEventEmail)
707707+ case "tools.ozone.moderation.defs#modEventResolveAppeal":
708708+ t.ModerationDefs_ModEventResolveAppeal = new(ModerationDefs_ModEventResolveAppeal)
709709+ return json.Unmarshal(b, t.ModerationDefs_ModEventResolveAppeal)
710710+ case "tools.ozone.moderation.defs#modEventDivert":
711711+ t.ModerationDefs_ModEventDivert = new(ModerationDefs_ModEventDivert)
712712+ return json.Unmarshal(b, t.ModerationDefs_ModEventDivert)
713713+ case "tools.ozone.moderation.defs#modEventTag":
714714+ t.ModerationDefs_ModEventTag = new(ModerationDefs_ModEventTag)
715715+ return json.Unmarshal(b, t.ModerationDefs_ModEventTag)
716716+ case "tools.ozone.moderation.defs#accountEvent":
717717+ t.ModerationDefs_AccountEvent = new(ModerationDefs_AccountEvent)
718718+ return json.Unmarshal(b, t.ModerationDefs_AccountEvent)
719719+ case "tools.ozone.moderation.defs#identityEvent":
720720+ t.ModerationDefs_IdentityEvent = new(ModerationDefs_IdentityEvent)
721721+ return json.Unmarshal(b, t.ModerationDefs_IdentityEvent)
722722+ case "tools.ozone.moderation.defs#recordEvent":
723723+ t.ModerationDefs_RecordEvent = new(ModerationDefs_RecordEvent)
724724+ return json.Unmarshal(b, t.ModerationDefs_RecordEvent)
725725+ case "tools.ozone.moderation.defs#modEventPriorityScore":
726726+ t.ModerationDefs_ModEventPriorityScore = new(ModerationDefs_ModEventPriorityScore)
727727+ return json.Unmarshal(b, t.ModerationDefs_ModEventPriorityScore)
728728+729729+ default:
730730+ return nil
731731+ }
732732+}
733733+734734+type ModerationDefs_ModEventView_Subject struct {
735735+ AdminDefs_RepoRef *comatprototypes.AdminDefs_RepoRef
736736+ RepoStrongRef *comatprototypes.RepoStrongRef
737737+ ConvoDefs_MessageRef *chatbskytypes.ConvoDefs_MessageRef
738738+}
739739+740740+func (t *ModerationDefs_ModEventView_Subject) MarshalJSON() ([]byte, error) {
741741+ if t.AdminDefs_RepoRef != nil {
742742+ t.AdminDefs_RepoRef.LexiconTypeID = "com.atproto.admin.defs#repoRef"
743743+ return json.Marshal(t.AdminDefs_RepoRef)
744744+ }
745745+ if t.RepoStrongRef != nil {
746746+ t.RepoStrongRef.LexiconTypeID = "com.atproto.repo.strongRef"
747747+ return json.Marshal(t.RepoStrongRef)
748748+ }
749749+ if t.ConvoDefs_MessageRef != nil {
750750+ t.ConvoDefs_MessageRef.LexiconTypeID = "chat.bsky.convo.defs#messageRef"
751751+ return json.Marshal(t.ConvoDefs_MessageRef)
752752+ }
753753+ return nil, fmt.Errorf("cannot marshal empty enum")
754754+}
755755+func (t *ModerationDefs_ModEventView_Subject) UnmarshalJSON(b []byte) error {
756756+ typ, err := util.TypeExtract(b)
757757+ if err != nil {
758758+ return err
759759+ }
760760+761761+ switch typ {
762762+ case "com.atproto.admin.defs#repoRef":
763763+ t.AdminDefs_RepoRef = new(comatprototypes.AdminDefs_RepoRef)
764764+ return json.Unmarshal(b, t.AdminDefs_RepoRef)
765765+ case "com.atproto.repo.strongRef":
766766+ t.RepoStrongRef = new(comatprototypes.RepoStrongRef)
767767+ return json.Unmarshal(b, t.RepoStrongRef)
768768+ case "chat.bsky.convo.defs#messageRef":
769769+ t.ConvoDefs_MessageRef = new(chatbskytypes.ConvoDefs_MessageRef)
770770+ return json.Unmarshal(b, t.ConvoDefs_MessageRef)
771771+772772+ default:
773773+ return nil
774774+ }
775775+}
776776+777777+// ModerationDefs_Moderation is a "moderation" in the tools.ozone.moderation.defs schema.
778778+type ModerationDefs_Moderation struct {
779779+ SubjectStatus *ModerationDefs_SubjectStatusView `json:"subjectStatus,omitempty" cborgen:"subjectStatus,omitempty"`
780780+}
781781+782782+// ModerationDefs_ModerationDetail is a "moderationDetail" in the tools.ozone.moderation.defs schema.
783783+type ModerationDefs_ModerationDetail struct {
784784+ SubjectStatus *ModerationDefs_SubjectStatusView `json:"subjectStatus,omitempty" cborgen:"subjectStatus,omitempty"`
785785+}
786786+787787+// ModerationDefs_RecordEvent is a "recordEvent" in the tools.ozone.moderation.defs schema.
788788+//
789789+// Logs lifecycle event on a record subject. Normally captured by automod from the firehose and emitted to ozone for historical tracking.
790790+//
791791+// RECORDTYPE: ModerationDefs_RecordEvent
792792+type ModerationDefs_RecordEvent struct {
793793+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#recordEvent" cborgen:"$type,const=tools.ozone.moderation.defs#recordEvent"`
794794+ Cid *string `json:"cid,omitempty" cborgen:"cid,omitempty"`
795795+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
796796+ Op string `json:"op" cborgen:"op"`
797797+ Timestamp string `json:"timestamp" cborgen:"timestamp"`
798798+}
799799+800800+// ModerationDefs_RecordHosting is a "recordHosting" in the tools.ozone.moderation.defs schema.
801801+//
802802+// RECORDTYPE: ModerationDefs_RecordHosting
803803+type ModerationDefs_RecordHosting struct {
804804+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#recordHosting" cborgen:"$type,const=tools.ozone.moderation.defs#recordHosting"`
805805+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
806806+ DeletedAt *string `json:"deletedAt,omitempty" cborgen:"deletedAt,omitempty"`
807807+ Status string `json:"status" cborgen:"status"`
808808+ UpdatedAt *string `json:"updatedAt,omitempty" cborgen:"updatedAt,omitempty"`
809809+}
810810+811811+// ModerationDefs_RecordView is a "recordView" in the tools.ozone.moderation.defs schema.
812812+//
813813+// RECORDTYPE: ModerationDefs_RecordView
814814+type ModerationDefs_RecordView struct {
815815+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#recordView" cborgen:"$type,const=tools.ozone.moderation.defs#recordView"`
816816+ BlobCids []string `json:"blobCids" cborgen:"blobCids"`
817817+ Cid string `json:"cid" cborgen:"cid"`
818818+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
819819+ Moderation *ModerationDefs_Moderation `json:"moderation" cborgen:"moderation"`
820820+ Repo *ModerationDefs_RepoView `json:"repo" cborgen:"repo"`
821821+ Uri string `json:"uri" cborgen:"uri"`
822822+ Value *util.LexiconTypeDecoder `json:"value" cborgen:"value"`
823823+}
824824+825825+// ModerationDefs_RecordViewDetail is a "recordViewDetail" in the tools.ozone.moderation.defs schema.
826826+//
827827+// RECORDTYPE: ModerationDefs_RecordViewDetail
828828+type ModerationDefs_RecordViewDetail struct {
829829+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#recordViewDetail" cborgen:"$type,const=tools.ozone.moderation.defs#recordViewDetail"`
830830+ Blobs []*ModerationDefs_BlobView `json:"blobs" cborgen:"blobs"`
831831+ Cid string `json:"cid" cborgen:"cid"`
832832+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
833833+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
834834+ Moderation *ModerationDefs_ModerationDetail `json:"moderation" cborgen:"moderation"`
835835+ Repo *ModerationDefs_RepoView `json:"repo" cborgen:"repo"`
836836+ Uri string `json:"uri" cborgen:"uri"`
837837+ Value *util.LexiconTypeDecoder `json:"value" cborgen:"value"`
838838+}
839839+840840+// ModerationDefs_RecordViewNotFound is a "recordViewNotFound" in the tools.ozone.moderation.defs schema.
841841+//
842842+// RECORDTYPE: ModerationDefs_RecordViewNotFound
843843+type ModerationDefs_RecordViewNotFound struct {
844844+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#recordViewNotFound" cborgen:"$type,const=tools.ozone.moderation.defs#recordViewNotFound"`
845845+ Uri string `json:"uri" cborgen:"uri"`
846846+}
847847+848848+// ModerationDefs_RecordsStats is a "recordsStats" in the tools.ozone.moderation.defs schema.
849849+//
850850+// Statistics about a set of record subject items
851851+type ModerationDefs_RecordsStats struct {
852852+ // appealedCount: Number of items that were appealed at least once
853853+ AppealedCount *int64 `json:"appealedCount,omitempty" cborgen:"appealedCount,omitempty"`
854854+ // escalatedCount: Number of items that were escalated at least once
855855+ EscalatedCount *int64 `json:"escalatedCount,omitempty" cborgen:"escalatedCount,omitempty"`
856856+ // pendingCount: Number of item currently in "reviewOpen" or "reviewEscalated" state
857857+ PendingCount *int64 `json:"pendingCount,omitempty" cborgen:"pendingCount,omitempty"`
858858+ // processedCount: Number of item currently in "reviewNone" or "reviewClosed" state
859859+ ProcessedCount *int64 `json:"processedCount,omitempty" cborgen:"processedCount,omitempty"`
860860+ // reportedCount: Number of items that were reported at least once
861861+ ReportedCount *int64 `json:"reportedCount,omitempty" cborgen:"reportedCount,omitempty"`
862862+ // subjectCount: Total number of item in the set
863863+ SubjectCount *int64 `json:"subjectCount,omitempty" cborgen:"subjectCount,omitempty"`
864864+ // takendownCount: Number of item currently taken down
865865+ TakendownCount *int64 `json:"takendownCount,omitempty" cborgen:"takendownCount,omitempty"`
866866+ // totalReports: Cumulative sum of the number of reports on the items in the set
867867+ TotalReports *int64 `json:"totalReports,omitempty" cborgen:"totalReports,omitempty"`
868868+}
869869+870870+// ModerationDefs_RepoView is a "repoView" in the tools.ozone.moderation.defs schema.
871871+//
872872+// RECORDTYPE: ModerationDefs_RepoView
873873+type ModerationDefs_RepoView struct {
874874+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#repoView" cborgen:"$type,const=tools.ozone.moderation.defs#repoView"`
875875+ DeactivatedAt *string `json:"deactivatedAt,omitempty" cborgen:"deactivatedAt,omitempty"`
876876+ Did string `json:"did" cborgen:"did"`
877877+ Email *string `json:"email,omitempty" cborgen:"email,omitempty"`
878878+ Handle string `json:"handle" cborgen:"handle"`
879879+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
880880+ InviteNote *string `json:"inviteNote,omitempty" cborgen:"inviteNote,omitempty"`
881881+ InvitedBy *comatprototypes.ServerDefs_InviteCode `json:"invitedBy,omitempty" cborgen:"invitedBy,omitempty"`
882882+ InvitesDisabled *bool `json:"invitesDisabled,omitempty" cborgen:"invitesDisabled,omitempty"`
883883+ Moderation *ModerationDefs_Moderation `json:"moderation" cborgen:"moderation"`
884884+ RelatedRecords []*util.LexiconTypeDecoder `json:"relatedRecords" cborgen:"relatedRecords"`
885885+ ThreatSignatures []*comatprototypes.AdminDefs_ThreatSignature `json:"threatSignatures,omitempty" cborgen:"threatSignatures,omitempty"`
886886+}
887887+888888+// ModerationDefs_RepoViewDetail is a "repoViewDetail" in the tools.ozone.moderation.defs schema.
889889+//
890890+// RECORDTYPE: ModerationDefs_RepoViewDetail
891891+type ModerationDefs_RepoViewDetail struct {
892892+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#repoViewDetail" cborgen:"$type,const=tools.ozone.moderation.defs#repoViewDetail"`
893893+ DeactivatedAt *string `json:"deactivatedAt,omitempty" cborgen:"deactivatedAt,omitempty"`
894894+ Did string `json:"did" cborgen:"did"`
895895+ Email *string `json:"email,omitempty" cborgen:"email,omitempty"`
896896+ EmailConfirmedAt *string `json:"emailConfirmedAt,omitempty" cborgen:"emailConfirmedAt,omitempty"`
897897+ Handle string `json:"handle" cborgen:"handle"`
898898+ IndexedAt string `json:"indexedAt" cborgen:"indexedAt"`
899899+ InviteNote *string `json:"inviteNote,omitempty" cborgen:"inviteNote,omitempty"`
900900+ InvitedBy *comatprototypes.ServerDefs_InviteCode `json:"invitedBy,omitempty" cborgen:"invitedBy,omitempty"`
901901+ Invites []*comatprototypes.ServerDefs_InviteCode `json:"invites,omitempty" cborgen:"invites,omitempty"`
902902+ InvitesDisabled *bool `json:"invitesDisabled,omitempty" cborgen:"invitesDisabled,omitempty"`
903903+ Labels []*comatprototypes.LabelDefs_Label `json:"labels,omitempty" cborgen:"labels,omitempty"`
904904+ Moderation *ModerationDefs_ModerationDetail `json:"moderation" cborgen:"moderation"`
905905+ RelatedRecords []*util.LexiconTypeDecoder `json:"relatedRecords" cborgen:"relatedRecords"`
906906+ ThreatSignatures []*comatprototypes.AdminDefs_ThreatSignature `json:"threatSignatures,omitempty" cborgen:"threatSignatures,omitempty"`
907907+}
908908+909909+// ModerationDefs_RepoViewNotFound is a "repoViewNotFound" in the tools.ozone.moderation.defs schema.
910910+//
911911+// RECORDTYPE: ModerationDefs_RepoViewNotFound
912912+type ModerationDefs_RepoViewNotFound struct {
913913+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#repoViewNotFound" cborgen:"$type,const=tools.ozone.moderation.defs#repoViewNotFound"`
914914+ Did string `json:"did" cborgen:"did"`
915915+}
916916+917917+// ModerationDefs_ReporterStats is a "reporterStats" in the tools.ozone.moderation.defs schema.
918918+type ModerationDefs_ReporterStats struct {
919919+ // accountReportCount: The total number of reports made by the user on accounts.
920920+ AccountReportCount int64 `json:"accountReportCount" cborgen:"accountReportCount"`
921921+ Did string `json:"did" cborgen:"did"`
922922+ // labeledAccountCount: The total number of accounts labeled as a result of the user's reports.
923923+ LabeledAccountCount int64 `json:"labeledAccountCount" cborgen:"labeledAccountCount"`
924924+ // labeledRecordCount: The total number of records labeled as a result of the user's reports.
925925+ LabeledRecordCount int64 `json:"labeledRecordCount" cborgen:"labeledRecordCount"`
926926+ // recordReportCount: The total number of reports made by the user on records.
927927+ RecordReportCount int64 `json:"recordReportCount" cborgen:"recordReportCount"`
928928+ // reportedAccountCount: The total number of accounts reported by the user.
929929+ ReportedAccountCount int64 `json:"reportedAccountCount" cborgen:"reportedAccountCount"`
930930+ // reportedRecordCount: The total number of records reported by the user.
931931+ ReportedRecordCount int64 `json:"reportedRecordCount" cborgen:"reportedRecordCount"`
932932+ // takendownAccountCount: The total number of accounts taken down as a result of the user's reports.
933933+ TakendownAccountCount int64 `json:"takendownAccountCount" cborgen:"takendownAccountCount"`
934934+ // takendownRecordCount: The total number of records taken down as a result of the user's reports.
935935+ TakendownRecordCount int64 `json:"takendownRecordCount" cborgen:"takendownRecordCount"`
936936+}
937937+938938+// ModerationDefs_SubjectStatusView is a "subjectStatusView" in the tools.ozone.moderation.defs schema.
939939+type ModerationDefs_SubjectStatusView struct {
940940+ // accountStats: Statistics related to the account subject
941941+ AccountStats *ModerationDefs_AccountStats `json:"accountStats,omitempty" cborgen:"accountStats,omitempty"`
942942+ // appealed: True indicates that the a previously taken moderator action was appealed against, by the author of the content. False indicates last appeal was resolved by moderators.
943943+ Appealed *bool `json:"appealed,omitempty" cborgen:"appealed,omitempty"`
944944+ // comment: Sticky comment on the subject.
945945+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
946946+ // createdAt: Timestamp referencing the first moderation status impacting event was emitted on the subject
947947+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
948948+ Hosting *ModerationDefs_SubjectStatusView_Hosting `json:"hosting,omitempty" cborgen:"hosting,omitempty"`
949949+ Id int64 `json:"id" cborgen:"id"`
950950+ // lastAppealedAt: Timestamp referencing when the author of the subject appealed a moderation action
951951+ LastAppealedAt *string `json:"lastAppealedAt,omitempty" cborgen:"lastAppealedAt,omitempty"`
952952+ LastReportedAt *string `json:"lastReportedAt,omitempty" cborgen:"lastReportedAt,omitempty"`
953953+ LastReviewedAt *string `json:"lastReviewedAt,omitempty" cborgen:"lastReviewedAt,omitempty"`
954954+ LastReviewedBy *string `json:"lastReviewedBy,omitempty" cborgen:"lastReviewedBy,omitempty"`
955955+ MuteReportingUntil *string `json:"muteReportingUntil,omitempty" cborgen:"muteReportingUntil,omitempty"`
956956+ MuteUntil *string `json:"muteUntil,omitempty" cborgen:"muteUntil,omitempty"`
957957+ // priorityScore: Numeric value representing the level of priority. Higher score means higher priority.
958958+ PriorityScore *int64 `json:"priorityScore,omitempty" cborgen:"priorityScore,omitempty"`
959959+ // recordsStats: Statistics related to the record subjects authored by the subject's account
960960+ RecordsStats *ModerationDefs_RecordsStats `json:"recordsStats,omitempty" cborgen:"recordsStats,omitempty"`
961961+ ReviewState *string `json:"reviewState" cborgen:"reviewState"`
962962+ Subject *ModerationDefs_SubjectStatusView_Subject `json:"subject" cborgen:"subject"`
963963+ SubjectBlobCids []string `json:"subjectBlobCids,omitempty" cborgen:"subjectBlobCids,omitempty"`
964964+ SubjectRepoHandle *string `json:"subjectRepoHandle,omitempty" cborgen:"subjectRepoHandle,omitempty"`
965965+ SuspendUntil *string `json:"suspendUntil,omitempty" cborgen:"suspendUntil,omitempty"`
966966+ Tags []string `json:"tags,omitempty" cborgen:"tags,omitempty"`
967967+ Takendown *bool `json:"takendown,omitempty" cborgen:"takendown,omitempty"`
968968+ // updatedAt: Timestamp referencing when the last update was made to the moderation status of the subject
969969+ UpdatedAt string `json:"updatedAt" cborgen:"updatedAt"`
970970+}
971971+972972+type ModerationDefs_SubjectStatusView_Hosting struct {
973973+ ModerationDefs_AccountHosting *ModerationDefs_AccountHosting
974974+ ModerationDefs_RecordHosting *ModerationDefs_RecordHosting
975975+}
976976+977977+func (t *ModerationDefs_SubjectStatusView_Hosting) MarshalJSON() ([]byte, error) {
978978+ if t.ModerationDefs_AccountHosting != nil {
979979+ t.ModerationDefs_AccountHosting.LexiconTypeID = "tools.ozone.moderation.defs#accountHosting"
980980+ return json.Marshal(t.ModerationDefs_AccountHosting)
981981+ }
982982+ if t.ModerationDefs_RecordHosting != nil {
983983+ t.ModerationDefs_RecordHosting.LexiconTypeID = "tools.ozone.moderation.defs#recordHosting"
984984+ return json.Marshal(t.ModerationDefs_RecordHosting)
985985+ }
986986+ return nil, fmt.Errorf("cannot marshal empty enum")
987987+}
988988+func (t *ModerationDefs_SubjectStatusView_Hosting) UnmarshalJSON(b []byte) error {
989989+ typ, err := util.TypeExtract(b)
990990+ if err != nil {
991991+ return err
992992+ }
993993+994994+ switch typ {
995995+ case "tools.ozone.moderation.defs#accountHosting":
996996+ t.ModerationDefs_AccountHosting = new(ModerationDefs_AccountHosting)
997997+ return json.Unmarshal(b, t.ModerationDefs_AccountHosting)
998998+ case "tools.ozone.moderation.defs#recordHosting":
999999+ t.ModerationDefs_RecordHosting = new(ModerationDefs_RecordHosting)
10001000+ return json.Unmarshal(b, t.ModerationDefs_RecordHosting)
10011001+10021002+ default:
10031003+ return nil
10041004+ }
10051005+}
10061006+10071007+type ModerationDefs_SubjectStatusView_Subject struct {
10081008+ AdminDefs_RepoRef *comatprototypes.AdminDefs_RepoRef
10091009+ RepoStrongRef *comatprototypes.RepoStrongRef
10101010+}
10111011+10121012+func (t *ModerationDefs_SubjectStatusView_Subject) MarshalJSON() ([]byte, error) {
10131013+ if t.AdminDefs_RepoRef != nil {
10141014+ t.AdminDefs_RepoRef.LexiconTypeID = "com.atproto.admin.defs#repoRef"
10151015+ return json.Marshal(t.AdminDefs_RepoRef)
10161016+ }
10171017+ if t.RepoStrongRef != nil {
10181018+ t.RepoStrongRef.LexiconTypeID = "com.atproto.repo.strongRef"
10191019+ return json.Marshal(t.RepoStrongRef)
10201020+ }
10211021+ return nil, fmt.Errorf("cannot marshal empty enum")
10221022+}
10231023+func (t *ModerationDefs_SubjectStatusView_Subject) UnmarshalJSON(b []byte) error {
10241024+ typ, err := util.TypeExtract(b)
10251025+ if err != nil {
10261026+ return err
10271027+ }
10281028+10291029+ switch typ {
10301030+ case "com.atproto.admin.defs#repoRef":
10311031+ t.AdminDefs_RepoRef = new(comatprototypes.AdminDefs_RepoRef)
10321032+ return json.Unmarshal(b, t.AdminDefs_RepoRef)
10331033+ case "com.atproto.repo.strongRef":
10341034+ t.RepoStrongRef = new(comatprototypes.RepoStrongRef)
10351035+ return json.Unmarshal(b, t.RepoStrongRef)
10361036+10371037+ default:
10381038+ return nil
10391039+ }
10401040+}
10411041+10421042+// ModerationDefs_SubjectView is a "subjectView" in the tools.ozone.moderation.defs schema.
10431043+//
10441044+// Detailed view of a subject. For record subjects, the author's repo and profile will be returned.
10451045+type ModerationDefs_SubjectView struct {
10461046+ Profile *ModerationDefs_SubjectView_Profile `json:"profile,omitempty" cborgen:"profile,omitempty"`
10471047+ Record *ModerationDefs_RecordViewDetail `json:"record,omitempty" cborgen:"record,omitempty"`
10481048+ Repo *ModerationDefs_RepoViewDetail `json:"repo,omitempty" cborgen:"repo,omitempty"`
10491049+ Status *ModerationDefs_SubjectStatusView `json:"status,omitempty" cborgen:"status,omitempty"`
10501050+ Subject string `json:"subject" cborgen:"subject"`
10511051+ Type *string `json:"type" cborgen:"type"`
10521052+}
10531053+10541054+// ModerationDefs_VideoDetails is a "videoDetails" in the tools.ozone.moderation.defs schema.
10551055+//
10561056+// RECORDTYPE: ModerationDefs_VideoDetails
10571057+type ModerationDefs_VideoDetails struct {
10581058+ LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#videoDetails" cborgen:"$type,const=tools.ozone.moderation.defs#videoDetails"`
10591059+ Height int64 `json:"height" cborgen:"height"`
10601060+ Length int64 `json:"length" cborgen:"length"`
10611061+ Width int64 `json:"width" cborgen:"width"`
10621062+}
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.moderation.getSubjects
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ModerationGetSubjects_Output is the output of a tools.ozone.moderation.getSubjects call.
1414+type ModerationGetSubjects_Output struct {
1515+ Subjects []*ModerationDefs_SubjectView `json:"subjects" cborgen:"subjects"`
1616+}
1717+1818+// ModerationGetSubjects calls the XRPC method "tools.ozone.moderation.getSubjects".
1919+func ModerationGetSubjects(ctx context.Context, c *xrpc.Client, subjects []string) (*ModerationGetSubjects_Output, error) {
2020+ var out ModerationGetSubjects_Output
2121+2222+ params := map[string]interface{}{
2323+ "subjects": subjects,
2424+ }
2525+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.moderation.getSubjects", params, nil, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+63
api/ozone/moderationqueryEvents.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.moderation.queryEvents
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ModerationQueryEvents_Output is the output of a tools.ozone.moderation.queryEvents call.
1414+type ModerationQueryEvents_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Events []*ModerationDefs_ModEventView `json:"events" cborgen:"events"`
1717+}
1818+1919+// ModerationQueryEvents calls the XRPC method "tools.ozone.moderation.queryEvents".
2020+//
2121+// addedLabels: If specified, only events where all of these labels were added are returned
2222+// addedTags: If specified, only events where all of these tags were added are returned
2323+// collections: If specified, only events where the subject belongs to the given collections will be returned. When subjectType is set to 'account', this will be ignored.
2424+// comment: If specified, only events with comments containing the keyword are returned. Apply || separator to use multiple keywords and match using OR condition.
2525+// createdAfter: Retrieve events created after a given timestamp
2626+// createdBefore: Retrieve events created before a given timestamp
2727+// hasComment: If true, only events with comments are returned
2828+// includeAllUserRecords: If true, events on all record types (posts, lists, profile etc.) or records from given 'collections' param, owned by the did are returned.
2929+// removedLabels: If specified, only events where all of these labels were removed are returned
3030+// removedTags: If specified, only events where all of these tags were removed are returned
3131+// sortDirection: Sort direction for the events. Defaults to descending order of created at timestamp.
3232+// subjectType: If specified, only events where the subject is of the given type (account or record) will be returned. When this is set to 'account' the 'collections' parameter will be ignored. When includeAllUserRecords or subject is set, this will be ignored.
3333+// types: The types of events (fully qualified string in the format of tools.ozone.moderation.defs#modEvent<name>) to filter by. If not specified, all events are returned.
3434+func ModerationQueryEvents(ctx context.Context, c *xrpc.Client, addedLabels []string, addedTags []string, collections []string, comment string, createdAfter string, createdBefore string, createdBy string, cursor string, hasComment bool, includeAllUserRecords bool, limit int64, policies []string, removedLabels []string, removedTags []string, reportTypes []string, sortDirection string, subject string, subjectType string, types []string) (*ModerationQueryEvents_Output, error) {
3535+ var out ModerationQueryEvents_Output
3636+3737+ params := map[string]interface{}{
3838+ "addedLabels": addedLabels,
3939+ "addedTags": addedTags,
4040+ "collections": collections,
4141+ "comment": comment,
4242+ "createdAfter": createdAfter,
4343+ "createdBefore": createdBefore,
4444+ "createdBy": createdBy,
4545+ "cursor": cursor,
4646+ "hasComment": hasComment,
4747+ "includeAllUserRecords": includeAllUserRecords,
4848+ "limit": limit,
4949+ "policies": policies,
5050+ "removedLabels": removedLabels,
5151+ "removedTags": removedTags,
5252+ "reportTypes": reportTypes,
5353+ "sortDirection": sortDirection,
5454+ "subject": subject,
5555+ "subjectType": subjectType,
5656+ "types": types,
5757+ }
5858+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.moderation.queryEvents", params, nil, &out); err != nil {
5959+ return nil, err
6060+ }
6161+6262+ return &out, nil
6363+}
+92
api/ozone/moderationqueryStatuses.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.moderation.queryStatuses
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ModerationQueryStatuses_Output is the output of a tools.ozone.moderation.queryStatuses call.
1414+type ModerationQueryStatuses_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ SubjectStatuses []*ModerationDefs_SubjectStatusView `json:"subjectStatuses" cborgen:"subjectStatuses"`
1717+}
1818+1919+// ModerationQueryStatuses calls the XRPC method "tools.ozone.moderation.queryStatuses".
2020+//
2121+// appealed: Get subjects in unresolved appealed status
2222+// collections: If specified, subjects belonging to the given collections will be returned. When subjectType is set to 'account', this will be ignored.
2323+// comment: Search subjects by keyword from comments
2424+// hostingDeletedAfter: Search subjects where the associated record/account was deleted after a given timestamp
2525+// hostingDeletedBefore: Search subjects where the associated record/account was deleted before a given timestamp
2626+// hostingStatuses: Search subjects by the status of the associated record/account
2727+// hostingUpdatedAfter: Search subjects where the associated record/account was updated after a given timestamp
2828+// hostingUpdatedBefore: Search subjects where the associated record/account was updated before a given timestamp
2929+// includeAllUserRecords: All subjects, or subjects from given 'collections' param, belonging to the account specified in the 'subject' param will be returned.
3030+// includeMuted: By default, we don't include muted subjects in the results. Set this to true to include them.
3131+// lastReviewedBy: Get all subject statuses that were reviewed by a specific moderator
3232+// minAccountSuspendCount: If specified, only subjects that belong to an account that has at least this many suspensions will be returned.
3333+// minPriorityScore: If specified, only subjects that have priority score value above the given value will be returned.
3434+// minReportedRecordsCount: If specified, only subjects that belong to an account that has at least this many reported records will be returned.
3535+// minTakendownRecordsCount: If specified, only subjects that belong to an account that has at least this many taken down records will be returned.
3636+// onlyMuted: When set to true, only muted subjects and reporters will be returned.
3737+// queueCount: Number of queues being used by moderators. Subjects will be split among all queues.
3838+// queueIndex: Index of the queue to fetch subjects from. Works only when queueCount value is specified.
3939+// queueSeed: A seeder to shuffle/balance the queue items.
4040+// reportedAfter: Search subjects reported after a given timestamp
4141+// reportedBefore: Search subjects reported before a given timestamp
4242+// reviewState: Specify when fetching subjects in a certain state
4343+// reviewedAfter: Search subjects reviewed after a given timestamp
4444+// reviewedBefore: Search subjects reviewed before a given timestamp
4545+// subject: The subject to get the status for.
4646+// subjectType: If specified, subjects of the given type (account or record) will be returned. When this is set to 'account' the 'collections' parameter will be ignored. When includeAllUserRecords or subject is set, this will be ignored.
4747+// takendown: Get subjects that were taken down
4848+func ModerationQueryStatuses(ctx context.Context, c *xrpc.Client, appealed bool, collections []string, comment string, cursor string, excludeTags []string, hostingDeletedAfter string, hostingDeletedBefore string, hostingStatuses []string, hostingUpdatedAfter string, hostingUpdatedBefore string, ignoreSubjects []string, includeAllUserRecords bool, includeMuted bool, lastReviewedBy string, limit int64, minAccountSuspendCount int64, minPriorityScore int64, minReportedRecordsCount int64, minTakendownRecordsCount int64, onlyMuted bool, queueCount int64, queueIndex int64, queueSeed string, reportedAfter string, reportedBefore string, reviewState string, reviewedAfter string, reviewedBefore string, sortDirection string, sortField string, subject string, subjectType string, tags []string, takendown bool) (*ModerationQueryStatuses_Output, error) {
4949+ var out ModerationQueryStatuses_Output
5050+5151+ params := map[string]interface{}{
5252+ "appealed": appealed,
5353+ "collections": collections,
5454+ "comment": comment,
5555+ "cursor": cursor,
5656+ "excludeTags": excludeTags,
5757+ "hostingDeletedAfter": hostingDeletedAfter,
5858+ "hostingDeletedBefore": hostingDeletedBefore,
5959+ "hostingStatuses": hostingStatuses,
6060+ "hostingUpdatedAfter": hostingUpdatedAfter,
6161+ "hostingUpdatedBefore": hostingUpdatedBefore,
6262+ "ignoreSubjects": ignoreSubjects,
6363+ "includeAllUserRecords": includeAllUserRecords,
6464+ "includeMuted": includeMuted,
6565+ "lastReviewedBy": lastReviewedBy,
6666+ "limit": limit,
6767+ "minAccountSuspendCount": minAccountSuspendCount,
6868+ "minPriorityScore": minPriorityScore,
6969+ "minReportedRecordsCount": minReportedRecordsCount,
7070+ "minTakendownRecordsCount": minTakendownRecordsCount,
7171+ "onlyMuted": onlyMuted,
7272+ "queueCount": queueCount,
7373+ "queueIndex": queueIndex,
7474+ "queueSeed": queueSeed,
7575+ "reportedAfter": reportedAfter,
7676+ "reportedBefore": reportedBefore,
7777+ "reviewState": reviewState,
7878+ "reviewedAfter": reviewedAfter,
7979+ "reviewedBefore": reviewedBefore,
8080+ "sortDirection": sortDirection,
8181+ "sortField": sortField,
8282+ "subject": subject,
8383+ "subjectType": subjectType,
8484+ "tags": tags,
8585+ "takendown": takendown,
8686+ }
8787+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.moderation.queryStatuses", params, nil, &out); err != nil {
8888+ return nil, err
8989+ }
9090+9191+ return &out, nil
9292+}
+36
api/ozone/moderationsearchRepos.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.moderation.searchRepos
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ModerationSearchRepos_Output is the output of a tools.ozone.moderation.searchRepos call.
1414+type ModerationSearchRepos_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Repos []*ModerationDefs_RepoView `json:"repos" cborgen:"repos"`
1717+}
1818+1919+// ModerationSearchRepos calls the XRPC method "tools.ozone.moderation.searchRepos".
2020+//
2121+// term: DEPRECATED: use 'q' instead
2222+func ModerationSearchRepos(ctx context.Context, c *xrpc.Client, cursor string, limit int64, q string, term string) (*ModerationSearchRepos_Output, error) {
2323+ var out ModerationSearchRepos_Output
2424+2525+ params := map[string]interface{}{
2626+ "cursor": cursor,
2727+ "limit": limit,
2828+ "q": q,
2929+ "term": term,
3030+ }
3131+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.moderation.searchRepos", params, nil, &out); err != nil {
3232+ return nil, err
3333+ }
3434+3535+ return &out, nil
3636+}
+42
api/ozone/servergetConfig.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.server.getConfig
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// ServerGetConfig_Output is the output of a tools.ozone.server.getConfig call.
1414+type ServerGetConfig_Output struct {
1515+ Appview *ServerGetConfig_ServiceConfig `json:"appview,omitempty" cborgen:"appview,omitempty"`
1616+ BlobDivert *ServerGetConfig_ServiceConfig `json:"blobDivert,omitempty" cborgen:"blobDivert,omitempty"`
1717+ Chat *ServerGetConfig_ServiceConfig `json:"chat,omitempty" cborgen:"chat,omitempty"`
1818+ Pds *ServerGetConfig_ServiceConfig `json:"pds,omitempty" cborgen:"pds,omitempty"`
1919+ // verifierDid: The did of the verifier used for verification.
2020+ VerifierDid *string `json:"verifierDid,omitempty" cborgen:"verifierDid,omitempty"`
2121+ Viewer *ServerGetConfig_ViewerConfig `json:"viewer,omitempty" cborgen:"viewer,omitempty"`
2222+}
2323+2424+// ServerGetConfig_ServiceConfig is a "serviceConfig" in the tools.ozone.server.getConfig schema.
2525+type ServerGetConfig_ServiceConfig struct {
2626+ Url *string `json:"url,omitempty" cborgen:"url,omitempty"`
2727+}
2828+2929+// ServerGetConfig_ViewerConfig is a "viewerConfig" in the tools.ozone.server.getConfig schema.
3030+type ServerGetConfig_ViewerConfig struct {
3131+ Role *string `json:"role,omitempty" cborgen:"role,omitempty"`
3232+}
3333+3434+// ServerGetConfig calls the XRPC method "tools.ozone.server.getConfig".
3535+func ServerGetConfig(ctx context.Context, c *xrpc.Client) (*ServerGetConfig_Output, error) {
3636+ var out ServerGetConfig_Output
3737+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.server.getConfig", nil, nil, &out); err != nil {
3838+ return nil, err
3939+ }
4040+4141+ return &out, nil
4242+}
+28
api/ozone/setaddValues.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.set.addValues
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SetAddValues_Input is the input argument to a tools.ozone.set.addValues call.
1414+type SetAddValues_Input struct {
1515+ // name: Name of the set to add values to
1616+ Name string `json:"name" cborgen:"name"`
1717+ // values: Array of string values to add to the set
1818+ Values []string `json:"values" cborgen:"values"`
1919+}
2020+2121+// SetAddValues calls the XRPC method "tools.ozone.set.addValues".
2222+func SetAddValues(ctx context.Context, c *xrpc.Client, input *SetAddValues_Input) error {
2323+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.set.addValues", nil, input, nil); err != nil {
2424+ return err
2525+ }
2626+2727+ return nil
2828+}
+20
api/ozone/setdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.set.defs
66+77+// SetDefs_Set is a "set" in the tools.ozone.set.defs schema.
88+type SetDefs_Set struct {
99+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
1010+ Name string `json:"name" cborgen:"name"`
1111+}
1212+1313+// SetDefs_SetView is a "setView" in the tools.ozone.set.defs schema.
1414+type SetDefs_SetView struct {
1515+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
1616+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
1717+ Name string `json:"name" cborgen:"name"`
1818+ SetSize int64 `json:"setSize" cborgen:"setSize"`
1919+ UpdatedAt string `json:"updatedAt" cborgen:"updatedAt"`
2020+}
+31
api/ozone/setdeleteSet.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.set.deleteSet
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SetDeleteSet_Input is the input argument to a tools.ozone.set.deleteSet call.
1414+type SetDeleteSet_Input struct {
1515+ // name: Name of the set to delete
1616+ Name string `json:"name" cborgen:"name"`
1717+}
1818+1919+// SetDeleteSet_Output is the output of a tools.ozone.set.deleteSet call.
2020+type SetDeleteSet_Output struct {
2121+}
2222+2323+// SetDeleteSet calls the XRPC method "tools.ozone.set.deleteSet".
2424+func SetDeleteSet(ctx context.Context, c *xrpc.Client, input *SetDeleteSet_Input) (*SetDeleteSet_Output, error) {
2525+ var out SetDeleteSet_Output
2626+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.set.deleteSet", nil, input, &out); err != nil {
2727+ return nil, err
2828+ }
2929+3030+ return &out, nil
3131+}
+28
api/ozone/setdeleteValues.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.set.deleteValues
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SetDeleteValues_Input is the input argument to a tools.ozone.set.deleteValues call.
1414+type SetDeleteValues_Input struct {
1515+ // name: Name of the set to delete values from
1616+ Name string `json:"name" cborgen:"name"`
1717+ // values: Array of string values to delete from the set
1818+ Values []string `json:"values" cborgen:"values"`
1919+}
2020+2121+// SetDeleteValues calls the XRPC method "tools.ozone.set.deleteValues".
2222+func SetDeleteValues(ctx context.Context, c *xrpc.Client, input *SetDeleteValues_Input) error {
2323+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.set.deleteValues", nil, input, nil); err != nil {
2424+ return err
2525+ }
2626+2727+ return nil
2828+}
+34
api/ozone/setgetValues.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.set.getValues
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SetGetValues_Output is the output of a tools.ozone.set.getValues call.
1414+type SetGetValues_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Set *SetDefs_SetView `json:"set" cborgen:"set"`
1717+ Values []string `json:"values" cborgen:"values"`
1818+}
1919+2020+// SetGetValues calls the XRPC method "tools.ozone.set.getValues".
2121+func SetGetValues(ctx context.Context, c *xrpc.Client, cursor string, limit int64, name string) (*SetGetValues_Output, error) {
2222+ var out SetGetValues_Output
2323+2424+ params := map[string]interface{}{
2525+ "cursor": cursor,
2626+ "limit": limit,
2727+ "name": name,
2828+ }
2929+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.set.getValues", params, nil, &out); err != nil {
3030+ return nil, err
3131+ }
3232+3333+ return &out, nil
3434+}
+37
api/ozone/setquerySets.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.set.querySets
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SetQuerySets_Output is the output of a tools.ozone.set.querySets call.
1414+type SetQuerySets_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Sets []*SetDefs_SetView `json:"sets" cborgen:"sets"`
1717+}
1818+1919+// SetQuerySets calls the XRPC method "tools.ozone.set.querySets".
2020+//
2121+// sortDirection: Defaults to ascending order of name field.
2222+func SetQuerySets(ctx context.Context, c *xrpc.Client, cursor string, limit int64, namePrefix string, sortBy string, sortDirection string) (*SetQuerySets_Output, error) {
2323+ var out SetQuerySets_Output
2424+2525+ params := map[string]interface{}{
2626+ "cursor": cursor,
2727+ "limit": limit,
2828+ "namePrefix": namePrefix,
2929+ "sortBy": sortBy,
3030+ "sortDirection": sortDirection,
3131+ }
3232+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.set.querySets", params, nil, &out); err != nil {
3333+ return nil, err
3434+ }
3535+3636+ return &out, nil
3737+}
+23
api/ozone/settingdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.setting.defs
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+// SettingDefs_Option is a "option" in the tools.ozone.setting.defs schema.
1212+type SettingDefs_Option struct {
1313+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
1414+ CreatedBy string `json:"createdBy" cborgen:"createdBy"`
1515+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
1616+ Did string `json:"did" cborgen:"did"`
1717+ Key string `json:"key" cborgen:"key"`
1818+ LastUpdatedBy string `json:"lastUpdatedBy" cborgen:"lastUpdatedBy"`
1919+ ManagerRole *string `json:"managerRole,omitempty" cborgen:"managerRole,omitempty"`
2020+ Scope string `json:"scope" cborgen:"scope"`
2121+ UpdatedAt *string `json:"updatedAt,omitempty" cborgen:"updatedAt,omitempty"`
2222+ Value *util.LexiconTypeDecoder `json:"value" cborgen:"value"`
2323+}
+38
api/ozone/settinglistOptions.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.setting.listOptions
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SettingListOptions_Output is the output of a tools.ozone.setting.listOptions call.
1414+type SettingListOptions_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Options []*SettingDefs_Option `json:"options" cborgen:"options"`
1717+}
1818+1919+// SettingListOptions calls the XRPC method "tools.ozone.setting.listOptions".
2020+//
2121+// keys: Filter for only the specified keys. Ignored if prefix is provided
2222+// prefix: Filter keys by prefix
2323+func SettingListOptions(ctx context.Context, c *xrpc.Client, cursor string, keys []string, limit int64, prefix string, scope string) (*SettingListOptions_Output, error) {
2424+ var out SettingListOptions_Output
2525+2626+ params := map[string]interface{}{
2727+ "cursor": cursor,
2828+ "keys": keys,
2929+ "limit": limit,
3030+ "prefix": prefix,
3131+ "scope": scope,
3232+ }
3333+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.setting.listOptions", params, nil, &out); err != nil {
3434+ return nil, err
3535+ }
3636+3737+ return &out, nil
3838+}
+31
api/ozone/settingremoveOptions.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.setting.removeOptions
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SettingRemoveOptions_Input is the input argument to a tools.ozone.setting.removeOptions call.
1414+type SettingRemoveOptions_Input struct {
1515+ Keys []string `json:"keys" cborgen:"keys"`
1616+ Scope string `json:"scope" cborgen:"scope"`
1717+}
1818+1919+// SettingRemoveOptions_Output is the output of a tools.ozone.setting.removeOptions call.
2020+type SettingRemoveOptions_Output struct {
2121+}
2222+2323+// SettingRemoveOptions calls the XRPC method "tools.ozone.setting.removeOptions".
2424+func SettingRemoveOptions(ctx context.Context, c *xrpc.Client, input *SettingRemoveOptions_Input) (*SettingRemoveOptions_Output, error) {
2525+ var out SettingRemoveOptions_Output
2626+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.setting.removeOptions", nil, input, &out); err != nil {
2727+ return nil, err
2828+ }
2929+3030+ return &out, nil
3131+}
+36
api/ozone/settingupsertOption.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.setting.upsertOption
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/lex/util"
1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// SettingUpsertOption_Input is the input argument to a tools.ozone.setting.upsertOption call.
1515+type SettingUpsertOption_Input struct {
1616+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
1717+ Key string `json:"key" cborgen:"key"`
1818+ ManagerRole *string `json:"managerRole,omitempty" cborgen:"managerRole,omitempty"`
1919+ Scope string `json:"scope" cborgen:"scope"`
2020+ Value *util.LexiconTypeDecoder `json:"value" cborgen:"value"`
2121+}
2222+2323+// SettingUpsertOption_Output is the output of a tools.ozone.setting.upsertOption call.
2424+type SettingUpsertOption_Output struct {
2525+ Option *SettingDefs_Option `json:"option" cborgen:"option"`
2626+}
2727+2828+// SettingUpsertOption calls the XRPC method "tools.ozone.setting.upsertOption".
2929+func SettingUpsertOption(ctx context.Context, c *xrpc.Client, input *SettingUpsertOption_Input) (*SettingUpsertOption_Output, error) {
3030+ var out SettingUpsertOption_Output
3131+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.setting.upsertOption", nil, input, &out); err != nil {
3232+ return nil, err
3333+ }
3434+3535+ return &out, nil
3636+}
+21
api/ozone/setupsertSet.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.set.upsertSet
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SetUpsertSet calls the XRPC method "tools.ozone.set.upsertSet".
1414+func SetUpsertSet(ctx context.Context, c *xrpc.Client, input *SetDefs_Set) (*SetDefs_SetView, error) {
1515+ var out SetDefs_SetView
1616+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.set.upsertSet", nil, input, &out); err != nil {
1717+ return nil, err
1818+ }
1919+2020+ return &out, nil
2121+}
+11
api/ozone/signaturedefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.signature.defs
66+77+// SignatureDefs_SigDetail is a "sigDetail" in the tools.ozone.signature.defs schema.
88+type SignatureDefs_SigDetail struct {
99+ Property string `json:"property" cborgen:"property"`
1010+ Value string `json:"value" cborgen:"value"`
1111+}
+30
api/ozone/signaturefindCorrelation.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.signature.findCorrelation
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// SignatureFindCorrelation_Output is the output of a tools.ozone.signature.findCorrelation call.
1414+type SignatureFindCorrelation_Output struct {
1515+ Details []*SignatureDefs_SigDetail `json:"details" cborgen:"details"`
1616+}
1717+1818+// SignatureFindCorrelation calls the XRPC method "tools.ozone.signature.findCorrelation".
1919+func SignatureFindCorrelation(ctx context.Context, c *xrpc.Client, dids []string) (*SignatureFindCorrelation_Output, error) {
2020+ var out SignatureFindCorrelation_Output
2121+2222+ params := map[string]interface{}{
2323+ "dids": dids,
2424+ }
2525+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.signature.findCorrelation", params, nil, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+40
api/ozone/signaturefindRelatedAccounts.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.signature.findRelatedAccounts
66+77+import (
88+ "context"
99+1010+ comatprototypes "github.com/bluesky-social/indigo/api/atproto"
1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// SignatureFindRelatedAccounts_Output is the output of a tools.ozone.signature.findRelatedAccounts call.
1515+type SignatureFindRelatedAccounts_Output struct {
1616+ Accounts []*SignatureFindRelatedAccounts_RelatedAccount `json:"accounts" cborgen:"accounts"`
1717+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1818+}
1919+2020+// SignatureFindRelatedAccounts_RelatedAccount is a "relatedAccount" in the tools.ozone.signature.findRelatedAccounts schema.
2121+type SignatureFindRelatedAccounts_RelatedAccount struct {
2222+ Account *comatprototypes.AdminDefs_AccountView `json:"account" cborgen:"account"`
2323+ Similarities []*SignatureDefs_SigDetail `json:"similarities,omitempty" cborgen:"similarities,omitempty"`
2424+}
2525+2626+// SignatureFindRelatedAccounts calls the XRPC method "tools.ozone.signature.findRelatedAccounts".
2727+func SignatureFindRelatedAccounts(ctx context.Context, c *xrpc.Client, cursor string, did string, limit int64) (*SignatureFindRelatedAccounts_Output, error) {
2828+ var out SignatureFindRelatedAccounts_Output
2929+3030+ params := map[string]interface{}{
3131+ "cursor": cursor,
3232+ "did": did,
3333+ "limit": limit,
3434+ }
3535+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.signature.findRelatedAccounts", params, nil, &out); err != nil {
3636+ return nil, err
3737+ }
3838+3939+ return &out, nil
4040+}
+34
api/ozone/signaturesearchAccounts.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.signature.searchAccounts
66+77+import (
88+ "context"
99+1010+ comatprototypes "github.com/bluesky-social/indigo/api/atproto"
1111+ "github.com/bluesky-social/indigo/xrpc"
1212+)
1313+1414+// SignatureSearchAccounts_Output is the output of a tools.ozone.signature.searchAccounts call.
1515+type SignatureSearchAccounts_Output struct {
1616+ Accounts []*comatprototypes.AdminDefs_AccountView `json:"accounts" cborgen:"accounts"`
1717+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1818+}
1919+2020+// SignatureSearchAccounts calls the XRPC method "tools.ozone.signature.searchAccounts".
2121+func SignatureSearchAccounts(ctx context.Context, c *xrpc.Client, cursor string, limit int64, values []string) (*SignatureSearchAccounts_Output, error) {
2222+ var out SignatureSearchAccounts_Output
2323+2424+ params := map[string]interface{}{
2525+ "cursor": cursor,
2626+ "limit": limit,
2727+ "values": values,
2828+ }
2929+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.signature.searchAccounts", params, nil, &out); err != nil {
3030+ return nil, err
3131+ }
3232+3333+ return &out, nil
3434+}
+27
api/ozone/teamaddMember.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.team.addMember
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// TeamAddMember_Input is the input argument to a tools.ozone.team.addMember call.
1414+type TeamAddMember_Input struct {
1515+ Did string `json:"did" cborgen:"did"`
1616+ Role string `json:"role" cborgen:"role"`
1717+}
1818+1919+// TeamAddMember calls the XRPC method "tools.ozone.team.addMember".
2020+func TeamAddMember(ctx context.Context, c *xrpc.Client, input *TeamAddMember_Input) (*TeamDefs_Member, error) {
2121+ var out TeamDefs_Member
2222+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.team.addMember", nil, input, &out); err != nil {
2323+ return nil, err
2424+ }
2525+2626+ return &out, nil
2727+}
+20
api/ozone/teamdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.team.defs
66+77+import (
88+ appbskytypes "github.com/bluesky-social/indigo/api/bsky"
99+)
1010+1111+// TeamDefs_Member is a "member" in the tools.ozone.team.defs schema.
1212+type TeamDefs_Member struct {
1313+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
1414+ Did string `json:"did" cborgen:"did"`
1515+ Disabled *bool `json:"disabled,omitempty" cborgen:"disabled,omitempty"`
1616+ LastUpdatedBy *string `json:"lastUpdatedBy,omitempty" cborgen:"lastUpdatedBy,omitempty"`
1717+ Profile *appbskytypes.ActorDefs_ProfileViewDetailed `json:"profile,omitempty" cborgen:"profile,omitempty"`
1818+ Role string `json:"role" cborgen:"role"`
1919+ UpdatedAt *string `json:"updatedAt,omitempty" cborgen:"updatedAt,omitempty"`
2020+}
+25
api/ozone/teamdeleteMember.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.team.deleteMember
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// TeamDeleteMember_Input is the input argument to a tools.ozone.team.deleteMember call.
1414+type TeamDeleteMember_Input struct {
1515+ Did string `json:"did" cborgen:"did"`
1616+}
1717+1818+// TeamDeleteMember calls the XRPC method "tools.ozone.team.deleteMember".
1919+func TeamDeleteMember(ctx context.Context, c *xrpc.Client, input *TeamDeleteMember_Input) error {
2020+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.team.deleteMember", nil, input, nil); err != nil {
2121+ return err
2222+ }
2323+2424+ return nil
2525+}
+35
api/ozone/teamlistMembers.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.team.listMembers
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// TeamListMembers_Output is the output of a tools.ozone.team.listMembers call.
1414+type TeamListMembers_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Members []*TeamDefs_Member `json:"members" cborgen:"members"`
1717+}
1818+1919+// TeamListMembers calls the XRPC method "tools.ozone.team.listMembers".
2020+func TeamListMembers(ctx context.Context, c *xrpc.Client, cursor string, disabled bool, limit int64, q string, roles []string) (*TeamListMembers_Output, error) {
2121+ var out TeamListMembers_Output
2222+2323+ params := map[string]interface{}{
2424+ "cursor": cursor,
2525+ "disabled": disabled,
2626+ "limit": limit,
2727+ "q": q,
2828+ "roles": roles,
2929+ }
3030+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.team.listMembers", params, nil, &out); err != nil {
3131+ return nil, err
3232+ }
3333+3434+ return &out, nil
3535+}
+28
api/ozone/teamupdateMember.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.team.updateMember
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// TeamUpdateMember_Input is the input argument to a tools.ozone.team.updateMember call.
1414+type TeamUpdateMember_Input struct {
1515+ Did string `json:"did" cborgen:"did"`
1616+ Disabled *bool `json:"disabled,omitempty" cborgen:"disabled,omitempty"`
1717+ Role *string `json:"role,omitempty" cborgen:"role,omitempty"`
1818+}
1919+2020+// TeamUpdateMember calls the XRPC method "tools.ozone.team.updateMember".
2121+func TeamUpdateMember(ctx context.Context, c *xrpc.Client, input *TeamUpdateMember_Input) (*TeamDefs_Member, error) {
2222+ var out TeamDefs_Member
2323+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.team.updateMember", nil, input, &out); err != nil {
2424+ return nil, err
2525+ }
2626+2727+ return &out, nil
2828+}
+110
api/ozone/verificationdefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.verification.defs
66+77+import (
88+ "encoding/json"
99+ "fmt"
1010+1111+ "github.com/bluesky-social/indigo/lex/util"
1212+)
1313+1414+// VerificationDefs_VerificationView is a "verificationView" in the tools.ozone.verification.defs schema.
1515+//
1616+// Verification data for the associated subject.
1717+type VerificationDefs_VerificationView struct {
1818+ // createdAt: Timestamp when the verification was created.
1919+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
2020+ // displayName: Display name of the subject the verification applies to at the moment of verifying, which might not be the same at the time of viewing. The verification is only valid if the current displayName matches the one at the time of verifying.
2121+ DisplayName string `json:"displayName" cborgen:"displayName"`
2222+ // handle: Handle of the subject the verification applies to at the moment of verifying, which might not be the same at the time of viewing. The verification is only valid if the current handle matches the one at the time of verifying.
2323+ Handle string `json:"handle" cborgen:"handle"`
2424+ // issuer: The user who issued this verification.
2525+ Issuer string `json:"issuer" cborgen:"issuer"`
2626+ IssuerProfile *VerificationDefs_VerificationView_IssuerProfile `json:"issuerProfile,omitempty" cborgen:"issuerProfile,omitempty"`
2727+ IssuerRepo *VerificationDefs_VerificationView_IssuerRepo `json:"issuerRepo,omitempty" cborgen:"issuerRepo,omitempty"`
2828+ // revokeReason: Describes the reason for revocation, also indicating that the verification is no longer valid.
2929+ RevokeReason *string `json:"revokeReason,omitempty" cborgen:"revokeReason,omitempty"`
3030+ // revokedAt: Timestamp when the verification was revoked.
3131+ RevokedAt *string `json:"revokedAt,omitempty" cborgen:"revokedAt,omitempty"`
3232+ // revokedBy: The user who revoked this verification.
3333+ RevokedBy *string `json:"revokedBy,omitempty" cborgen:"revokedBy,omitempty"`
3434+ // subject: The subject of the verification.
3535+ Subject string `json:"subject" cborgen:"subject"`
3636+ SubjectProfile *VerificationDefs_VerificationView_SubjectProfile `json:"subjectProfile,omitempty" cborgen:"subjectProfile,omitempty"`
3737+ SubjectRepo *VerificationDefs_VerificationView_SubjectRepo `json:"subjectRepo,omitempty" cborgen:"subjectRepo,omitempty"`
3838+ // uri: The AT-URI of the verification record.
3939+ Uri string `json:"uri" cborgen:"uri"`
4040+}
4141+4242+type VerificationDefs_VerificationView_IssuerRepo struct {
4343+ ModerationDefs_RepoViewDetail *ModerationDefs_RepoViewDetail
4444+ ModerationDefs_RepoViewNotFound *ModerationDefs_RepoViewNotFound
4545+}
4646+4747+func (t *VerificationDefs_VerificationView_IssuerRepo) MarshalJSON() ([]byte, error) {
4848+ if t.ModerationDefs_RepoViewDetail != nil {
4949+ t.ModerationDefs_RepoViewDetail.LexiconTypeID = "tools.ozone.moderation.defs#repoViewDetail"
5050+ return json.Marshal(t.ModerationDefs_RepoViewDetail)
5151+ }
5252+ if t.ModerationDefs_RepoViewNotFound != nil {
5353+ t.ModerationDefs_RepoViewNotFound.LexiconTypeID = "tools.ozone.moderation.defs#repoViewNotFound"
5454+ return json.Marshal(t.ModerationDefs_RepoViewNotFound)
5555+ }
5656+ return nil, fmt.Errorf("cannot marshal empty enum")
5757+}
5858+func (t *VerificationDefs_VerificationView_IssuerRepo) UnmarshalJSON(b []byte) error {
5959+ typ, err := util.TypeExtract(b)
6060+ if err != nil {
6161+ return err
6262+ }
6363+6464+ switch typ {
6565+ case "tools.ozone.moderation.defs#repoViewDetail":
6666+ t.ModerationDefs_RepoViewDetail = new(ModerationDefs_RepoViewDetail)
6767+ return json.Unmarshal(b, t.ModerationDefs_RepoViewDetail)
6868+ case "tools.ozone.moderation.defs#repoViewNotFound":
6969+ t.ModerationDefs_RepoViewNotFound = new(ModerationDefs_RepoViewNotFound)
7070+ return json.Unmarshal(b, t.ModerationDefs_RepoViewNotFound)
7171+7272+ default:
7373+ return nil
7474+ }
7575+}
7676+7777+type VerificationDefs_VerificationView_SubjectRepo struct {
7878+ ModerationDefs_RepoViewDetail *ModerationDefs_RepoViewDetail
7979+ ModerationDefs_RepoViewNotFound *ModerationDefs_RepoViewNotFound
8080+}
8181+8282+func (t *VerificationDefs_VerificationView_SubjectRepo) MarshalJSON() ([]byte, error) {
8383+ if t.ModerationDefs_RepoViewDetail != nil {
8484+ t.ModerationDefs_RepoViewDetail.LexiconTypeID = "tools.ozone.moderation.defs#repoViewDetail"
8585+ return json.Marshal(t.ModerationDefs_RepoViewDetail)
8686+ }
8787+ if t.ModerationDefs_RepoViewNotFound != nil {
8888+ t.ModerationDefs_RepoViewNotFound.LexiconTypeID = "tools.ozone.moderation.defs#repoViewNotFound"
8989+ return json.Marshal(t.ModerationDefs_RepoViewNotFound)
9090+ }
9191+ return nil, fmt.Errorf("cannot marshal empty enum")
9292+}
9393+func (t *VerificationDefs_VerificationView_SubjectRepo) UnmarshalJSON(b []byte) error {
9494+ typ, err := util.TypeExtract(b)
9595+ if err != nil {
9696+ return err
9797+ }
9898+9999+ switch typ {
100100+ case "tools.ozone.moderation.defs#repoViewDetail":
101101+ t.ModerationDefs_RepoViewDetail = new(ModerationDefs_RepoViewDetail)
102102+ return json.Unmarshal(b, t.ModerationDefs_RepoViewDetail)
103103+ case "tools.ozone.moderation.defs#repoViewNotFound":
104104+ t.ModerationDefs_RepoViewNotFound = new(ModerationDefs_RepoViewNotFound)
105105+ return json.Unmarshal(b, t.ModerationDefs_RepoViewNotFound)
106106+107107+ default:
108108+ return nil
109109+ }
110110+}
+55
api/ozone/verificationgrantVerifications.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.verification.grantVerifications
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// VerificationGrantVerifications_GrantError is a "grantError" in the tools.ozone.verification.grantVerifications schema.
1414+//
1515+// Error object for failed verifications.
1616+type VerificationGrantVerifications_GrantError struct {
1717+ // error: Error message describing the reason for failure.
1818+ Error string `json:"error" cborgen:"error"`
1919+ // subject: The did of the subject being verified
2020+ Subject string `json:"subject" cborgen:"subject"`
2121+}
2222+2323+// VerificationGrantVerifications_Input is the input argument to a tools.ozone.verification.grantVerifications call.
2424+type VerificationGrantVerifications_Input struct {
2525+ // verifications: Array of verification requests to process
2626+ Verifications []*VerificationGrantVerifications_VerificationInput `json:"verifications" cborgen:"verifications"`
2727+}
2828+2929+// VerificationGrantVerifications_Output is the output of a tools.ozone.verification.grantVerifications call.
3030+type VerificationGrantVerifications_Output struct {
3131+ FailedVerifications []*VerificationGrantVerifications_GrantError `json:"failedVerifications" cborgen:"failedVerifications"`
3232+ Verifications []*VerificationDefs_VerificationView `json:"verifications" cborgen:"verifications"`
3333+}
3434+3535+// VerificationGrantVerifications_VerificationInput is the input argument to a tools.ozone.verification.grantVerifications call.
3636+type VerificationGrantVerifications_VerificationInput struct {
3737+ // createdAt: Timestamp for verification record. Defaults to current time when not specified.
3838+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
3939+ // displayName: Display name of the subject the verification applies to at the moment of verifying.
4040+ DisplayName string `json:"displayName" cborgen:"displayName"`
4141+ // handle: Handle of the subject the verification applies to at the moment of verifying.
4242+ Handle string `json:"handle" cborgen:"handle"`
4343+ // subject: The did of the subject being verified
4444+ Subject string `json:"subject" cborgen:"subject"`
4545+}
4646+4747+// VerificationGrantVerifications calls the XRPC method "tools.ozone.verification.grantVerifications".
4848+func VerificationGrantVerifications(ctx context.Context, c *xrpc.Client, input *VerificationGrantVerifications_Input) (*VerificationGrantVerifications_Output, error) {
4949+ var out VerificationGrantVerifications_Output
5050+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.verification.grantVerifications", nil, input, &out); err != nil {
5151+ return nil, err
5252+ }
5353+5454+ return &out, nil
5555+}
+47
api/ozone/verificationlistVerifications.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.verification.listVerifications
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// VerificationListVerifications_Output is the output of a tools.ozone.verification.listVerifications call.
1414+type VerificationListVerifications_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ Verifications []*VerificationDefs_VerificationView `json:"verifications" cborgen:"verifications"`
1717+}
1818+1919+// VerificationListVerifications calls the XRPC method "tools.ozone.verification.listVerifications".
2020+//
2121+// createdAfter: Filter to verifications created after this timestamp
2222+// createdBefore: Filter to verifications created before this timestamp
2323+// cursor: Pagination cursor
2424+// isRevoked: Filter to verifications that are revoked or not. By default, includes both.
2525+// issuers: Filter to verifications from specific issuers
2626+// limit: Maximum number of results to return
2727+// sortDirection: Sort direction for creation date
2828+// subjects: Filter to specific verified DIDs
2929+func VerificationListVerifications(ctx context.Context, c *xrpc.Client, createdAfter string, createdBefore string, cursor string, isRevoked bool, issuers []string, limit int64, sortDirection string, subjects []string) (*VerificationListVerifications_Output, error) {
3030+ var out VerificationListVerifications_Output
3131+3232+ params := map[string]interface{}{
3333+ "createdAfter": createdAfter,
3434+ "createdBefore": createdBefore,
3535+ "cursor": cursor,
3636+ "isRevoked": isRevoked,
3737+ "issuers": issuers,
3838+ "limit": limit,
3939+ "sortDirection": sortDirection,
4040+ "subjects": subjects,
4141+ }
4242+ if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.verification.listVerifications", params, nil, &out); err != nil {
4343+ return nil, err
4444+ }
4545+4646+ return &out, nil
4747+}
+47
api/ozone/verificationrevokeVerifications.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package ozone
44+55+// schema: tools.ozone.verification.revokeVerifications
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// VerificationRevokeVerifications_Input is the input argument to a tools.ozone.verification.revokeVerifications call.
1414+type VerificationRevokeVerifications_Input struct {
1515+ // revokeReason: Reason for revoking the verification. This is optional and can be omitted if not needed.
1616+ RevokeReason *string `json:"revokeReason,omitempty" cborgen:"revokeReason,omitempty"`
1717+ // uris: Array of verification record uris to revoke
1818+ Uris []string `json:"uris" cborgen:"uris"`
1919+}
2020+2121+// VerificationRevokeVerifications_Output is the output of a tools.ozone.verification.revokeVerifications call.
2222+type VerificationRevokeVerifications_Output struct {
2323+ // failedRevocations: List of verification uris that couldn't be revoked, including failure reasons
2424+ FailedRevocations []*VerificationRevokeVerifications_RevokeError `json:"failedRevocations" cborgen:"failedRevocations"`
2525+ // revokedVerifications: List of verification uris successfully revoked
2626+ RevokedVerifications []string `json:"revokedVerifications" cborgen:"revokedVerifications"`
2727+}
2828+2929+// VerificationRevokeVerifications_RevokeError is a "revokeError" in the tools.ozone.verification.revokeVerifications schema.
3030+//
3131+// Error object for failed revocations
3232+type VerificationRevokeVerifications_RevokeError struct {
3333+ // error: Description of the error that occurred during revocation.
3434+ Error string `json:"error" cborgen:"error"`
3535+ // uri: The AT-URI of the verification record that failed to revoke.
3636+ Uri string `json:"uri" cborgen:"uri"`
3737+}
3838+3939+// VerificationRevokeVerifications calls the XRPC method "tools.ozone.verification.revokeVerifications".
4040+func VerificationRevokeVerifications(ctx context.Context, c *xrpc.Client, input *VerificationRevokeVerifications_Input) (*VerificationRevokeVerifications_Output, error) {
4141+ var out VerificationRevokeVerifications_Output
4242+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "tools.ozone.verification.revokeVerifications", nil, input, &out); err != nil {
4343+ return nil, err
4444+ }
4545+4646+ return &out, nil
4747+}
+37
api/teal/actordefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.actor.defs
66+77+import (
88+ appbskytypes "github.com/bluesky-social/indigo/api/bsky"
99+)
1010+1111+// AlphaActorDefs_MiniProfileView is a "miniProfileView" in the fm.teal.alpha.actor.defs schema.
1212+type AlphaActorDefs_MiniProfileView struct {
1313+ // avatar: IPLD of the avatar
1414+ Avatar *string `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
1515+ // did: The decentralized identifier of the actor
1616+ Did *string `json:"did,omitempty" cborgen:"did,omitempty"`
1717+ DisplayName *string `json:"displayName,omitempty" cborgen:"displayName,omitempty"`
1818+ Handle *string `json:"handle,omitempty" cborgen:"handle,omitempty"`
1919+}
2020+2121+// AlphaActorDefs_ProfileView is a "profileView" in the fm.teal.alpha.actor.defs schema.
2222+type AlphaActorDefs_ProfileView struct {
2323+ // avatar: IPLD of the avatar
2424+ Avatar *string `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
2525+ // banner: IPLD of the banner image
2626+ Banner *string `json:"banner,omitempty" cborgen:"banner,omitempty"`
2727+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
2828+ // description: Free-form profile description text.
2929+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
3030+ // descriptionFacets: Annotations of text in the profile description (mentions, URLs, hashtags, etc). May be changed to another (backwards compatible) lexicon.
3131+ DescriptionFacets []*appbskytypes.RichtextFacet `json:"descriptionFacets,omitempty" cborgen:"descriptionFacets,omitempty"`
3232+ // did: The decentralized identifier of the actor
3333+ Did *string `json:"did,omitempty" cborgen:"did,omitempty"`
3434+ DisplayName *string `json:"displayName,omitempty" cborgen:"displayName,omitempty"`
3535+ // featuredItem: The user's most recent item featured on their profile.
3636+ FeaturedItem *AlphaActorProfile_FeaturedItem `json:"featuredItem,omitempty" cborgen:"featuredItem,omitempty"`
3737+}
+32
api/teal/actorgetProfile.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.actor.getProfile
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// AlphaActorGetProfile_Output is the output of a fm.teal.alpha.actor.getProfile call.
1414+type AlphaActorGetProfile_Output struct {
1515+ Actor *AlphaActorDefs_ProfileView `json:"actor" cborgen:"actor"`
1616+}
1717+1818+// AlphaActorGetProfile calls the XRPC method "fm.teal.alpha.actor.getProfile".
1919+//
2020+// actor: The author's DID
2121+func AlphaActorGetProfile(ctx context.Context, c *xrpc.Client, actor string) (*AlphaActorGetProfile_Output, error) {
2222+ var out AlphaActorGetProfile_Output
2323+2424+ params := map[string]interface{}{
2525+ "actor": actor,
2626+ }
2727+ if err := c.Do(ctx, xrpc.Query, "", "fm.teal.alpha.actor.getProfile", params, nil, &out); err != nil {
2828+ return nil, err
2929+ }
3030+3131+ return &out, nil
3232+}
+32
api/teal/actorgetProfiles.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.actor.getProfiles
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// AlphaActorGetProfiles_Output is the output of a fm.teal.alpha.actor.getProfiles call.
1414+type AlphaActorGetProfiles_Output struct {
1515+ Actors []*AlphaActorDefs_MiniProfileView `json:"actors" cborgen:"actors"`
1616+}
1717+1818+// AlphaActorGetProfiles calls the XRPC method "fm.teal.alpha.actor.getProfiles".
1919+//
2020+// actors: Array of actor DIDs
2121+func AlphaActorGetProfiles(ctx context.Context, c *xrpc.Client, actors []string) (*AlphaActorGetProfiles_Output, error) {
2222+ var out AlphaActorGetProfiles_Output
2323+2424+ params := map[string]interface{}{
2525+ "actors": actors,
2626+ }
2727+ if err := c.Do(ctx, xrpc.Query, "", "fm.teal.alpha.actor.getProfiles", params, nil, &out); err != nil {
2828+ return nil, err
2929+ }
3030+3131+ return &out, nil
3232+}
+38
api/teal/actorprofile.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.actor.profile
66+77+import (
88+ appbskytypes "github.com/bluesky-social/indigo/api/bsky"
99+ "github.com/bluesky-social/indigo/lex/util"
1010+)
1111+1212+func init() {
1313+ util.RegisterType("fm.teal.alpha.actor.profile", &AlphaActorProfile{})
1414+} //
1515+// RECORDTYPE: AlphaActorProfile
1616+type AlphaActorProfile struct {
1717+ LexiconTypeID string `json:"$type,const=fm.teal.alpha.actor.profile" cborgen:"$type,const=fm.teal.alpha.actor.profile"`
1818+ // avatar: Small image to be displayed next to posts from account. AKA, 'profile picture'
1919+ Avatar *util.LexBlob `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
2020+ // banner: Larger horizontal image to display behind profile view.
2121+ Banner *util.LexBlob `json:"banner,omitempty" cborgen:"banner,omitempty"`
2222+ CreatedAt *string `json:"createdAt,omitempty" cborgen:"createdAt,omitempty"`
2323+ // description: Free-form profile description text.
2424+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
2525+ // descriptionFacets: Annotations of text in the profile description (mentions, URLs, hashtags, etc).
2626+ DescriptionFacets []*appbskytypes.RichtextFacet `json:"descriptionFacets,omitempty" cborgen:"descriptionFacets,omitempty"`
2727+ DisplayName *string `json:"displayName,omitempty" cborgen:"displayName,omitempty"`
2828+ // featuredItem: The user's most recent item featured on their profile.
2929+ FeaturedItem *AlphaActorProfile_FeaturedItem `json:"featuredItem,omitempty" cborgen:"featuredItem,omitempty"`
3030+}
3131+3232+// AlphaActorProfile_FeaturedItem is a "featuredItem" in the fm.teal.alpha.actor.profile schema.
3333+type AlphaActorProfile_FeaturedItem struct {
3434+ // mbid: The Musicbrainz ID of the item
3535+ Mbid string `json:"mbid" cborgen:"mbid"`
3636+ // type: The type of the item. Must be a valid Musicbrainz type, e.g. album, track, recording, etc.
3737+ Type string `json:"type" cborgen:"type"`
3838+}
+38
api/teal/actorsearchActors.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.actor.searchActors
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// AlphaActorSearchActors_Output is the output of a fm.teal.alpha.actor.searchActors call.
1414+type AlphaActorSearchActors_Output struct {
1515+ Actors []*AlphaActorDefs_MiniProfileView `json:"actors" cborgen:"actors"`
1616+ // cursor: Cursor for pagination
1717+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1818+}
1919+2020+// AlphaActorSearchActors calls the XRPC method "fm.teal.alpha.actor.searchActors".
2121+//
2222+// cursor: Cursor for pagination
2323+// limit: The maximum number of actors to return
2424+// q: The search query
2525+func AlphaActorSearchActors(ctx context.Context, c *xrpc.Client, cursor string, limit int64, q string) (*AlphaActorSearchActors_Output, error) {
2626+ var out AlphaActorSearchActors_Output
2727+2828+ params := map[string]interface{}{
2929+ "cursor": cursor,
3030+ "limit": limit,
3131+ "q": q,
3232+ }
3333+ if err := c.Do(ctx, xrpc.Query, "", "fm.teal.alpha.actor.searchActors", params, nil, &out); err != nil {
3434+ return nil, err
3535+ }
3636+3737+ return &out, nil
3838+}
+22
api/teal/actorstatus.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.actor.status
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("fm.teal.alpha.actor.status", &AlphaActorStatus{})
1313+} //
1414+// RECORDTYPE: AlphaActorStatus
1515+type AlphaActorStatus struct {
1616+ LexiconTypeID string `json:"$type,const=fm.teal.alpha.actor.status" cborgen:"$type,const=fm.teal.alpha.actor.status"`
1717+ // expiry: The unix timestamp of the expiry time of the item. If unavailable, default to 10 minutes past the start time.
1818+ Expiry *string `json:"expiry,omitempty" cborgen:"expiry,omitempty"`
1919+ Item *AlphaFeedDefs_PlayView `json:"item" cborgen:"item"`
2020+ // time: The unix timestamp of when the item was recorded
2121+ Time string `json:"time" cborgen:"time"`
2222+}
+35
api/teal/feeddefs.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.feed.defs
66+77+// AlphaFeedDefs_PlayView is a "playView" in the fm.teal.alpha.feed.defs schema.
88+type AlphaFeedDefs_PlayView struct {
99+ // artistMbIds: Array of Musicbrainz artist IDs
1010+ ArtistMbIds []string `json:"artistMbIds,omitempty" cborgen:"artistMbIds,omitempty"`
1111+ // artistNames: Array of artist names in order of original appearance.
1212+ ArtistNames []string `json:"artistNames" cborgen:"artistNames"`
1313+ // duration: The length of the track in seconds
1414+ Duration *int64 `json:"duration,omitempty" cborgen:"duration,omitempty"`
1515+ // isrc: The ISRC code associated with the recording
1616+ Isrc *string `json:"isrc,omitempty" cborgen:"isrc,omitempty"`
1717+ // musicServiceBaseDomain: The base domain of the music service. e.g. music.apple.com, tidal.com, spotify.com. Defaults to 'local' if not provided.
1818+ MusicServiceBaseDomain *string `json:"musicServiceBaseDomain,omitempty" cborgen:"musicServiceBaseDomain,omitempty"`
1919+ // originUrl: The URL associated with this track
2020+ OriginUrl *string `json:"originUrl,omitempty" cborgen:"originUrl,omitempty"`
2121+ // playedTime: The unix timestamp of when the track was played
2222+ PlayedTime *string `json:"playedTime,omitempty" cborgen:"playedTime,omitempty"`
2323+ // recordingMbId: The Musicbrainz recording ID of the track
2424+ RecordingMbId *string `json:"recordingMbId,omitempty" cborgen:"recordingMbId,omitempty"`
2525+ // releaseMbId: The Musicbrainz release ID
2626+ ReleaseMbId *string `json:"releaseMbId,omitempty" cborgen:"releaseMbId,omitempty"`
2727+ // releaseName: The name of the release/album
2828+ ReleaseName *string `json:"releaseName,omitempty" cborgen:"releaseName,omitempty"`
2929+ // submissionClientAgent: A user-agent style string specifying the user agent. e.g. tealtracker/0.0.1b (Linux; Android 13; SM-A715F). Defaults to 'manual/unknown' if not provided.
3030+ SubmissionClientAgent *string `json:"submissionClientAgent,omitempty" cborgen:"submissionClientAgent,omitempty"`
3131+ // trackMbId: The Musicbrainz ID of the track
3232+ TrackMbId *string `json:"trackMbId,omitempty" cborgen:"trackMbId,omitempty"`
3333+ // trackName: The name of the track
3434+ TrackName string `json:"trackName" cborgen:"trackName"`
3535+}
+36
api/teal/feedgetActorFeed.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.feed.getActorFeed
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// AlphaFeedGetActorFeed_Output is the output of a fm.teal.alpha.feed.getActorFeed call.
1414+type AlphaFeedGetActorFeed_Output struct {
1515+ Plays []*AlphaFeedDefs_PlayView `json:"plays" cborgen:"plays"`
1616+}
1717+1818+// AlphaFeedGetActorFeed calls the XRPC method "fm.teal.alpha.feed.getActorFeed".
1919+//
2020+// authorDID: The author's DID for the play
2121+// cursor: The cursor to start the query from
2222+// limit: The upper limit of tracks to get per request. Default is 20, max is 50.
2323+func AlphaFeedGetActorFeed(ctx context.Context, c *xrpc.Client, authorDID string, cursor string, limit int64) (*AlphaFeedGetActorFeed_Output, error) {
2424+ var out AlphaFeedGetActorFeed_Output
2525+2626+ params := map[string]interface{}{
2727+ "authorDID": authorDID,
2828+ "cursor": cursor,
2929+ "limit": limit,
3030+ }
3131+ if err := c.Do(ctx, xrpc.Query, "", "fm.teal.alpha.feed.getActorFeed", params, nil, &out); err != nil {
3232+ return nil, err
3333+ }
3434+3535+ return &out, nil
3636+}
+34
api/teal/feedgetPlay.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.feed.getPlay
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// AlphaFeedGetPlay_Output is the output of a fm.teal.alpha.feed.getPlay call.
1414+type AlphaFeedGetPlay_Output struct {
1515+ Play *AlphaFeedDefs_PlayView `json:"play" cborgen:"play"`
1616+}
1717+1818+// AlphaFeedGetPlay calls the XRPC method "fm.teal.alpha.feed.getPlay".
1919+//
2020+// authorDID: The author's DID for the play
2121+// rkey: The record key of the play
2222+func AlphaFeedGetPlay(ctx context.Context, c *xrpc.Client, authorDID string, rkey string) (*AlphaFeedGetPlay_Output, error) {
2323+ var out AlphaFeedGetPlay_Output
2424+2525+ params := map[string]interface{}{
2626+ "authorDID": authorDID,
2727+ "rkey": rkey,
2828+ }
2929+ if err := c.Do(ctx, xrpc.Query, "", "fm.teal.alpha.feed.getPlay", params, nil, &out); err != nil {
3030+ return nil, err
3131+ }
3232+3333+ return &out, nil
3434+}
+43
api/teal/feedplay.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package teal
44+55+// schema: fm.teal.alpha.feed.play
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("fm.teal.alpha.feed.play", &AlphaFeedPlay{})
1313+} //
1414+// RECORDTYPE: AlphaFeedPlay
1515+type AlphaFeedPlay struct {
1616+ LexiconTypeID string `json:"$type,const=fm.teal.alpha.feed.play" cborgen:"$type,const=fm.teal.alpha.feed.play"`
1717+ // artistMbIds: Array of Musicbrainz artist IDs
1818+ ArtistMbIds []string `json:"artistMbIds,omitempty" cborgen:"artistMbIds,omitempty"`
1919+ // artistNames: Array of artist names in order of original appearance.
2020+ ArtistNames []string `json:"artistNames" cborgen:"artistNames"`
2121+ // duration: The length of the track in seconds
2222+ Duration *int64 `json:"duration,omitempty" cborgen:"duration,omitempty"`
2323+ // isrc: The ISRC code associated with the recording
2424+ Isrc *string `json:"isrc,omitempty" cborgen:"isrc,omitempty"`
2525+ // musicServiceBaseDomain: The base domain of the music service. e.g. music.apple.com, tidal.com, spotify.com. Defaults to 'local' if unavailable or not provided.
2626+ MusicServiceBaseDomain *string `json:"musicServiceBaseDomain,omitempty" cborgen:"musicServiceBaseDomain,omitempty"`
2727+ // originUrl: The URL associated with this track
2828+ OriginUrl *string `json:"originUrl,omitempty" cborgen:"originUrl,omitempty"`
2929+ // playedTime: The unix timestamp of when the track was played
3030+ PlayedTime *string `json:"playedTime,omitempty" cborgen:"playedTime,omitempty"`
3131+ // recordingMbId: The Musicbrainz recording ID of the track
3232+ RecordingMbId *string `json:"recordingMbId,omitempty" cborgen:"recordingMbId,omitempty"`
3333+ // releaseMbId: The Musicbrainz release ID
3434+ ReleaseMbId *string `json:"releaseMbId,omitempty" cborgen:"releaseMbId,omitempty"`
3535+ // releaseName: The name of the release/album
3636+ ReleaseName *string `json:"releaseName,omitempty" cborgen:"releaseName,omitempty"`
3737+ // submissionClientAgent: A metadata string specifying the user agent where the format is `<app-identifier>/<version> (<kernel/OS-base>; <platform/OS-version>; <device-model>)`. If string is provided, only `app-identifier` and `version` are required. `app-identifier` is recommended to be in reverse dns format. Defaults to 'manual/unknown' if unavailable or not provided.
3838+ SubmissionClientAgent *string `json:"submissionClientAgent,omitempty" cborgen:"submissionClientAgent,omitempty"`
3939+ // trackMbId: The Musicbrainz ID of the track
4040+ TrackMbId *string `json:"trackMbId,omitempty" cborgen:"trackMbId,omitempty"`
4141+ // trackName: The name of the track
4242+ TrackName string `json:"trackName" cborgen:"trackName"`
4343+}