+11
api/atproto/moderationcreateReport.go
+11
api/atproto/moderationcreateReport.go
···
14
14
15
15
// ModerationCreateReport_Input is the input argument to a com.atproto.moderation.createReport call.
16
16
type ModerationCreateReport_Input struct {
17
+
ModTool *ModerationCreateReport_ModTool `json:"modTool,omitempty" cborgen:"modTool,omitempty"`
17
18
// reason: Additional context about the content and violation.
18
19
Reason *string `json:"reason,omitempty" cborgen:"reason,omitempty"`
19
20
// reasonType: Indicates the broad category of violation the report is for.
···
54
55
default:
55
56
return nil
56
57
}
58
+
}
59
+
60
+
// ModerationCreateReport_ModTool is a "modTool" in the com.atproto.moderation.createReport schema.
61
+
//
62
+
// Moderation tool information for tracing the source of the action
63
+
type ModerationCreateReport_ModTool struct {
64
+
// meta: Additional arbitrary metadata about the source
65
+
Meta *interface{} `json:"meta,omitempty" cborgen:"meta,omitempty"`
66
+
// name: Name/identifier of the source (e.g., 'bsky-app/android', 'bsky-web/chrome')
67
+
Name string `json:"name" cborgen:"name"`
57
68
}
58
69
59
70
// ModerationCreateReport_Output is the output of a com.atproto.moderation.createReport call.
+23
-2
api/ozone/moderationdefs.go
+23
-2
api/ozone/moderationdefs.go
···
359
359
CreatorHandle *string `json:"creatorHandle,omitempty" cborgen:"creatorHandle,omitempty"`
360
360
Event *ModerationDefs_ModEventView_Event `json:"event" cborgen:"event"`
361
361
Id int64 `json:"id" cborgen:"id"`
362
+
ModTool *ModerationDefs_ModTool `json:"modTool,omitempty" cborgen:"modTool,omitempty"`
362
363
Subject *ModerationDefs_ModEventView_Subject `json:"subject" cborgen:"subject"`
363
364
SubjectBlobCids []string `json:"subjectBlobCids" cborgen:"subjectBlobCids"`
364
365
SubjectHandle *string `json:"subjectHandle,omitempty" cborgen:"subjectHandle,omitempty"`
···
370
371
CreatedBy string `json:"createdBy" cborgen:"createdBy"`
371
372
Event *ModerationDefs_ModEventViewDetail_Event `json:"event" cborgen:"event"`
372
373
Id int64 `json:"id" cborgen:"id"`
374
+
ModTool *ModerationDefs_ModTool `json:"modTool,omitempty" cborgen:"modTool,omitempty"`
373
375
Subject *ModerationDefs_ModEventViewDetail_Subject `json:"subject" cborgen:"subject"`
374
376
SubjectBlobs []*ModerationDefs_BlobView `json:"subjectBlobs" cborgen:"subjectBlobs"`
375
377
}
···
842
844
}
843
845
}
844
846
847
+
// ModerationDefs_ModTool is a "modTool" in the tools.ozone.moderation.defs schema.
848
+
//
849
+
// Moderation tool information for tracing the source of the action
850
+
type ModerationDefs_ModTool struct {
851
+
// meta: Additional arbitrary metadata about the source
852
+
Meta *interface{} `json:"meta,omitempty" cborgen:"meta,omitempty"`
853
+
// name: Name/identifier of the source (e.g., 'automod', 'ozone/workspace')
854
+
Name string `json:"name" cborgen:"name"`
855
+
}
856
+
845
857
// ModerationDefs_Moderation is a "moderation" in the tools.ozone.moderation.defs schema.
846
858
type ModerationDefs_Moderation struct {
847
859
SubjectStatus *ModerationDefs_SubjectStatusView `json:"subjectStatus,omitempty" cborgen:"subjectStatus,omitempty"`
···
1077
1089
}
1078
1090
1079
1091
type ModerationDefs_SubjectStatusView_Subject struct {
1080
-
AdminDefs_RepoRef *comatprototypes.AdminDefs_RepoRef
1081
-
RepoStrongRef *comatprototypes.RepoStrongRef
1092
+
AdminDefs_RepoRef *comatprototypes.AdminDefs_RepoRef
1093
+
RepoStrongRef *comatprototypes.RepoStrongRef
1094
+
ConvoDefs_MessageRef *chatbskytypes.ConvoDefs_MessageRef
1082
1095
}
1083
1096
1084
1097
func (t *ModerationDefs_SubjectStatusView_Subject) MarshalJSON() ([]byte, error) {
···
1090
1103
t.RepoStrongRef.LexiconTypeID = "com.atproto.repo.strongRef"
1091
1104
return json.Marshal(t.RepoStrongRef)
1092
1105
}
1106
+
if t.ConvoDefs_MessageRef != nil {
1107
+
t.ConvoDefs_MessageRef.LexiconTypeID = "chat.bsky.convo.defs#messageRef"
1108
+
return json.Marshal(t.ConvoDefs_MessageRef)
1109
+
}
1093
1110
return nil, fmt.Errorf("cannot marshal empty enum")
1094
1111
}
1095
1112
func (t *ModerationDefs_SubjectStatusView_Subject) UnmarshalJSON(b []byte) error {
···
1105
1122
case "com.atproto.repo.strongRef":
1106
1123
t.RepoStrongRef = new(comatprototypes.RepoStrongRef)
1107
1124
return json.Unmarshal(b, t.RepoStrongRef)
1125
+
case "chat.bsky.convo.defs#messageRef":
1126
+
t.ConvoDefs_MessageRef = new(chatbskytypes.ConvoDefs_MessageRef)
1127
+
return json.Unmarshal(b, t.ConvoDefs_MessageRef)
1108
1128
1109
1129
default:
1110
1130
return nil
···
1115
1135
//
1116
1136
// Detailed view of a subject. For record subjects, the author's repo and profile will be returned.
1117
1137
type ModerationDefs_SubjectView struct {
1138
+
Profile *util.LexiconTypeDecoder `json:"profile,omitempty" cborgen:"profile,omitempty"`
1118
1139
Record *ModerationDefs_RecordViewDetail `json:"record,omitempty" cborgen:"record,omitempty"`
1119
1140
Repo *ModerationDefs_RepoViewDetail `json:"repo,omitempty" cborgen:"repo,omitempty"`
1120
1141
Status *ModerationDefs_SubjectStatusView `json:"status,omitempty" cborgen:"status,omitempty"`
+1
api/ozone/moderationemitEvent.go
+1
api/ozone/moderationemitEvent.go
···
17
17
type ModerationEmitEvent_Input struct {
18
18
CreatedBy string `json:"createdBy" cborgen:"createdBy"`
19
19
Event *ModerationEmitEvent_Input_Event `json:"event" cborgen:"event"`
20
+
ModTool *ModerationDefs_ModTool `json:"modTool,omitempty" cborgen:"modTool,omitempty"`
20
21
Subject *ModerationEmitEvent_Input_Subject `json:"subject" cborgen:"subject"`
21
22
SubjectBlobCids []string `json:"subjectBlobCids,omitempty" cborgen:"subjectBlobCids,omitempty"`
22
23
}
+34
api/ozone/safelinkaddRule.go
+34
api/ozone/safelinkaddRule.go
···
1
+
// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
2
+
3
+
package ozone
4
+
5
+
// schema: tools.ozone.safelink.addRule
6
+
7
+
import (
8
+
"context"
9
+
10
+
"github.com/bluesky-social/indigo/lex/util"
11
+
)
12
+
13
+
// SafelinkAddRule_Input is the input argument to a tools.ozone.safelink.addRule call.
14
+
type SafelinkAddRule_Input struct {
15
+
Action *string `json:"action" cborgen:"action"`
16
+
// comment: Optional comment about the decision
17
+
Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
18
+
// createdBy: Author DID. Only respected when using admin auth
19
+
CreatedBy *string `json:"createdBy,omitempty" cborgen:"createdBy,omitempty"`
20
+
Pattern *string `json:"pattern" cborgen:"pattern"`
21
+
Reason *string `json:"reason" cborgen:"reason"`
22
+
// url: The URL or domain to apply the rule to
23
+
Url string `json:"url" cborgen:"url"`
24
+
}
25
+
26
+
// SafelinkAddRule calls the XRPC method "tools.ozone.safelink.addRule".
27
+
func SafelinkAddRule(ctx context.Context, c util.LexClient, input *SafelinkAddRule_Input) (*SafelinkDefs_Event, error) {
28
+
var out SafelinkDefs_Event
29
+
if err := c.LexDo(ctx, util.Procedure, "application/json", "tools.ozone.safelink.addRule", nil, input, &out); err != nil {
30
+
return nil, err
31
+
}
32
+
33
+
return &out, nil
34
+
}
+43
api/ozone/safelinkdefs.go
+43
api/ozone/safelinkdefs.go
···
1
+
// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
2
+
3
+
package ozone
4
+
5
+
// schema: tools.ozone.safelink.defs
6
+
7
+
// SafelinkDefs_Event is a "event" in the tools.ozone.safelink.defs schema.
8
+
//
9
+
// An event for URL safety decisions
10
+
type SafelinkDefs_Event struct {
11
+
Action *string `json:"action" cborgen:"action"`
12
+
// comment: Optional comment about the decision
13
+
Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
14
+
CreatedAt string `json:"createdAt" cborgen:"createdAt"`
15
+
// createdBy: DID of the user who created this rule
16
+
CreatedBy string `json:"createdBy" cborgen:"createdBy"`
17
+
EventType *string `json:"eventType" cborgen:"eventType"`
18
+
// id: Auto-incrementing row ID
19
+
Id int64 `json:"id" cborgen:"id"`
20
+
Pattern *string `json:"pattern" cborgen:"pattern"`
21
+
Reason *string `json:"reason" cborgen:"reason"`
22
+
// url: The URL that this rule applies to
23
+
Url string `json:"url" cborgen:"url"`
24
+
}
25
+
26
+
// SafelinkDefs_UrlRule is a "urlRule" in the tools.ozone.safelink.defs schema.
27
+
//
28
+
// Input for creating a URL safety rule
29
+
type SafelinkDefs_UrlRule struct {
30
+
Action *string `json:"action" cborgen:"action"`
31
+
// comment: Optional comment about the decision
32
+
Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
33
+
// createdAt: Timestamp when the rule was created
34
+
CreatedAt string `json:"createdAt" cborgen:"createdAt"`
35
+
// createdBy: DID of the user added the rule.
36
+
CreatedBy string `json:"createdBy" cborgen:"createdBy"`
37
+
Pattern *string `json:"pattern" cborgen:"pattern"`
38
+
Reason *string `json:"reason" cborgen:"reason"`
39
+
// updatedAt: Timestamp when the rule was last updated
40
+
UpdatedAt string `json:"updatedAt" cborgen:"updatedAt"`
41
+
// url: The URL or domain to apply the rule to
42
+
Url string `json:"url" cborgen:"url"`
43
+
}
+42
api/ozone/safelinkqueryEvents.go
+42
api/ozone/safelinkqueryEvents.go
···
1
+
// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
2
+
3
+
package ozone
4
+
5
+
// schema: tools.ozone.safelink.queryEvents
6
+
7
+
import (
8
+
"context"
9
+
10
+
"github.com/bluesky-social/indigo/lex/util"
11
+
)
12
+
13
+
// SafelinkQueryEvents_Input is the input argument to a tools.ozone.safelink.queryEvents call.
14
+
type SafelinkQueryEvents_Input struct {
15
+
// cursor: Cursor for pagination
16
+
Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
17
+
// limit: Maximum number of results to return
18
+
Limit *int64 `json:"limit,omitempty" cborgen:"limit,omitempty"`
19
+
// patternType: Filter by pattern type
20
+
PatternType *string `json:"patternType,omitempty" cborgen:"patternType,omitempty"`
21
+
// sortDirection: Sort direction
22
+
SortDirection *string `json:"sortDirection,omitempty" cborgen:"sortDirection,omitempty"`
23
+
// urls: Filter by specific URLs or domains
24
+
Urls []string `json:"urls,omitempty" cborgen:"urls,omitempty"`
25
+
}
26
+
27
+
// SafelinkQueryEvents_Output is the output of a tools.ozone.safelink.queryEvents call.
28
+
type SafelinkQueryEvents_Output struct {
29
+
// cursor: Next cursor for pagination. Only present if there are more results.
30
+
Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
31
+
Events []*SafelinkDefs_Event `json:"events" cborgen:"events"`
32
+
}
33
+
34
+
// SafelinkQueryEvents calls the XRPC method "tools.ozone.safelink.queryEvents".
35
+
func SafelinkQueryEvents(ctx context.Context, c util.LexClient, input *SafelinkQueryEvents_Input) (*SafelinkQueryEvents_Output, error) {
36
+
var out SafelinkQueryEvents_Output
37
+
if err := c.LexDo(ctx, util.Procedure, "application/json", "tools.ozone.safelink.queryEvents", nil, input, &out); err != nil {
38
+
return nil, err
39
+
}
40
+
41
+
return &out, nil
42
+
}
+48
api/ozone/safelinkqueryRules.go
+48
api/ozone/safelinkqueryRules.go
···
1
+
// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
2
+
3
+
package ozone
4
+
5
+
// schema: tools.ozone.safelink.queryRules
6
+
7
+
import (
8
+
"context"
9
+
10
+
"github.com/bluesky-social/indigo/lex/util"
11
+
)
12
+
13
+
// SafelinkQueryRules_Input is the input argument to a tools.ozone.safelink.queryRules call.
14
+
type SafelinkQueryRules_Input struct {
15
+
// actions: Filter by action types
16
+
Actions []string `json:"actions,omitempty" cborgen:"actions,omitempty"`
17
+
// createdBy: Filter by rule creator
18
+
CreatedBy *string `json:"createdBy,omitempty" cborgen:"createdBy,omitempty"`
19
+
// cursor: Cursor for pagination
20
+
Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
21
+
// limit: Maximum number of results to return
22
+
Limit *int64 `json:"limit,omitempty" cborgen:"limit,omitempty"`
23
+
// patternType: Filter by pattern type
24
+
PatternType *string `json:"patternType,omitempty" cborgen:"patternType,omitempty"`
25
+
// reason: Filter by reason type
26
+
Reason *string `json:"reason,omitempty" cborgen:"reason,omitempty"`
27
+
// sortDirection: Sort direction
28
+
SortDirection *string `json:"sortDirection,omitempty" cborgen:"sortDirection,omitempty"`
29
+
// urls: Filter by specific URLs or domains
30
+
Urls []string `json:"urls,omitempty" cborgen:"urls,omitempty"`
31
+
}
32
+
33
+
// SafelinkQueryRules_Output is the output of a tools.ozone.safelink.queryRules call.
34
+
type SafelinkQueryRules_Output struct {
35
+
// cursor: Next cursor for pagination. Only present if there are more results.
36
+
Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
37
+
Rules []*SafelinkDefs_UrlRule `json:"rules" cborgen:"rules"`
38
+
}
39
+
40
+
// SafelinkQueryRules calls the XRPC method "tools.ozone.safelink.queryRules".
41
+
func SafelinkQueryRules(ctx context.Context, c util.LexClient, input *SafelinkQueryRules_Input) (*SafelinkQueryRules_Output, error) {
42
+
var out SafelinkQueryRules_Output
43
+
if err := c.LexDo(ctx, util.Procedure, "application/json", "tools.ozone.safelink.queryRules", nil, input, &out); err != nil {
44
+
return nil, err
45
+
}
46
+
47
+
return &out, nil
48
+
}
+32
api/ozone/safelinkremoveRule.go
+32
api/ozone/safelinkremoveRule.go
···
1
+
// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
2
+
3
+
package ozone
4
+
5
+
// schema: tools.ozone.safelink.removeRule
6
+
7
+
import (
8
+
"context"
9
+
10
+
"github.com/bluesky-social/indigo/lex/util"
11
+
)
12
+
13
+
// SafelinkRemoveRule_Input is the input argument to a tools.ozone.safelink.removeRule call.
14
+
type SafelinkRemoveRule_Input struct {
15
+
// comment: Optional comment about why the rule is being removed
16
+
Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
17
+
// createdBy: Optional DID of the user. Only respected when using admin auth.
18
+
CreatedBy *string `json:"createdBy,omitempty" cborgen:"createdBy,omitempty"`
19
+
Pattern *string `json:"pattern" cborgen:"pattern"`
20
+
// url: The URL or domain to remove the rule for
21
+
Url string `json:"url" cborgen:"url"`
22
+
}
23
+
24
+
// SafelinkRemoveRule calls the XRPC method "tools.ozone.safelink.removeRule".
25
+
func SafelinkRemoveRule(ctx context.Context, c util.LexClient, input *SafelinkRemoveRule_Input) (*SafelinkDefs_Event, error) {
26
+
var out SafelinkDefs_Event
27
+
if err := c.LexDo(ctx, util.Procedure, "application/json", "tools.ozone.safelink.removeRule", nil, input, &out); err != nil {
28
+
return nil, err
29
+
}
30
+
31
+
return &out, nil
32
+
}
+34
api/ozone/safelinkupdateRule.go
+34
api/ozone/safelinkupdateRule.go
···
1
+
// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
2
+
3
+
package ozone
4
+
5
+
// schema: tools.ozone.safelink.updateRule
6
+
7
+
import (
8
+
"context"
9
+
10
+
"github.com/bluesky-social/indigo/lex/util"
11
+
)
12
+
13
+
// SafelinkUpdateRule_Input is the input argument to a tools.ozone.safelink.updateRule call.
14
+
type SafelinkUpdateRule_Input struct {
15
+
Action *string `json:"action" cborgen:"action"`
16
+
// comment: Optional comment about the update
17
+
Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
18
+
// createdBy: Optional DID to credit as the creator. Only respected for admin_token authentication.
19
+
CreatedBy *string `json:"createdBy,omitempty" cborgen:"createdBy,omitempty"`
20
+
Pattern *string `json:"pattern" cborgen:"pattern"`
21
+
Reason *string `json:"reason" cborgen:"reason"`
22
+
// url: The URL or domain to update the rule for
23
+
Url string `json:"url" cborgen:"url"`
24
+
}
25
+
26
+
// SafelinkUpdateRule calls the XRPC method "tools.ozone.safelink.updateRule".
27
+
func SafelinkUpdateRule(ctx context.Context, c util.LexClient, input *SafelinkUpdateRule_Input) (*SafelinkDefs_Event, error) {
28
+
var out SafelinkDefs_Event
29
+
if err := c.LexDo(ctx, util.Procedure, "application/json", "tools.ozone.safelink.updateRule", nil, input, &out); err != nil {
30
+
return nil, err
31
+
}
32
+
33
+
return &out, nil
34
+
}
+6
-4
api/ozone/verificationdefs.go
+6
-4
api/ozone/verificationdefs.go
···
22
22
// 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.
23
23
Handle string `json:"handle" cborgen:"handle"`
24
24
// issuer: The user who issued this verification.
25
-
Issuer string `json:"issuer" cborgen:"issuer"`
26
-
IssuerRepo *VerificationDefs_VerificationView_IssuerRepo `json:"issuerRepo,omitempty" cborgen:"issuerRepo,omitempty"`
25
+
Issuer string `json:"issuer" cborgen:"issuer"`
26
+
IssuerProfile *util.LexiconTypeDecoder `json:"issuerProfile,omitempty" cborgen:"issuerProfile,omitempty"`
27
+
IssuerRepo *VerificationDefs_VerificationView_IssuerRepo `json:"issuerRepo,omitempty" cborgen:"issuerRepo,omitempty"`
27
28
// revokeReason: Describes the reason for revocation, also indicating that the verification is no longer valid.
28
29
RevokeReason *string `json:"revokeReason,omitempty" cborgen:"revokeReason,omitempty"`
29
30
// revokedAt: Timestamp when the verification was revoked.
···
31
32
// revokedBy: The user who revoked this verification.
32
33
RevokedBy *string `json:"revokedBy,omitempty" cborgen:"revokedBy,omitempty"`
33
34
// subject: The subject of the verification.
34
-
Subject string `json:"subject" cborgen:"subject"`
35
-
SubjectRepo *VerificationDefs_VerificationView_SubjectRepo `json:"subjectRepo,omitempty" cborgen:"subjectRepo,omitempty"`
35
+
Subject string `json:"subject" cborgen:"subject"`
36
+
SubjectProfile *util.LexiconTypeDecoder `json:"subjectProfile,omitempty" cborgen:"subjectProfile,omitempty"`
37
+
SubjectRepo *VerificationDefs_VerificationView_SubjectRepo `json:"subjectRepo,omitempty" cborgen:"subjectRepo,omitempty"`
36
38
// uri: The AT-URI of the verification record.
37
39
Uri string `json:"uri" cborgen:"uri"`
38
40
}