1 | |
2 | |
3 | * Update an organization |
4 | * Update various attributes and configurable settings for the given organization. |
5 | */ |
6 | export async function main(auth: RT.Sentry, body: Body) { |
7 | const url = new URL( |
8 | `https://${auth.region}.sentry.io/api/0/organizations/${auth.organizationSlug}/` |
9 | ) |
10 |
|
11 | const response = await fetch(url, { |
12 | method: 'PUT', |
13 | headers: { |
14 | 'Content-Type': 'application/json', |
15 | Authorization: 'Bearer ' + auth.token |
16 | }, |
17 | body: JSON.stringify(body) |
18 | }) |
19 | if (!response.ok) { |
20 | const text = await response.text() |
21 | throw new Error(`${response.status} ${text}`) |
22 | } |
23 | return await response.json() |
24 | } |
25 |
|
26 | |
27 | |
28 | * This file was automatically generated by json-schema-to-typescript. |
29 | * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, |
30 | * and run json-schema-to-typescript to regenerate this file. |
31 | */ |
32 |
|
33 | export interface Body { |
34 | |
35 | * The new slug for the organization, which needs to be unique. |
36 | */ |
37 | slug?: string |
38 | |
39 | * The new name for the organization. |
40 | */ |
41 | name?: string |
42 | |
43 | * Specify `true` to opt-in to new features before they're released to the public. |
44 | */ |
45 | isEarlyAdopter?: boolean |
46 | |
47 | * Specify `true` to hide AI features from the organization. |
48 | */ |
49 | hideAiFeatures?: boolean |
50 | |
51 | * Specify `true` to enable Code Coverage Insights. This feature is only available for organizations on the Team plan and above. Learn more about Codecov [here](/product/codecov/). |
52 | */ |
53 | codecovAccess?: boolean |
54 | |
55 | * The default role new members will receive. |
56 | * |
57 | * * `member` - Member |
58 | * * `admin` - Admin |
59 | * * `manager` - Manager |
60 | * * `owner` - Owner |
61 | */ |
62 | defaultRole?: 'member' | 'admin' | 'manager' | 'owner' |
63 | |
64 | * Specify `true` to allow organization members to freely join any team. |
65 | */ |
66 | openMembership?: boolean |
67 | |
68 | * Specify `true` to allow members to delete events (including the delete & discard action) by granting them the `event:admin` scope. |
69 | */ |
70 | eventsMemberAdmin?: boolean |
71 | |
72 | * Specify `true` to allow members to create, edit, and delete alert rules by granting them the `alerts:write` scope. |
73 | */ |
74 | alertsMemberWrite?: boolean |
75 | |
76 | * The role required to download event attachments, such as native crash reports or log files. |
77 | * |
78 | * * `member` - Member |
79 | * * `admin` - Admin |
80 | * * `manager` - Manager |
81 | * * `owner` - Owner |
82 | */ |
83 | attachmentsRole?: 'member' | 'admin' | 'manager' | 'owner' |
84 | |
85 | * The role required to download debug information files, ProGuard mappings and source maps. |
86 | * |
87 | * * `member` - Member |
88 | * * `admin` - Admin |
89 | * * `manager` - Manager |
90 | * * `owner` - Owner |
91 | */ |
92 | debugFilesRole?: 'member' | 'admin' | 'manager' | 'owner' |
93 | |
94 | * The type of display picture for the organization. |
95 | * |
96 | * * `letter_avatar` - Use initials |
97 | * * `upload` - Upload an image |
98 | */ |
99 | avatarType?: 'letter_avatar' | 'upload' |
100 | |
101 | * The image to upload as the organization avatar, in base64. Required if `avatarType` is `upload`. |
102 | */ |
103 | avatar?: string |
104 | |
105 | * Specify `true` to require and enforce two-factor authentication for all members. |
106 | */ |
107 | require2FA?: boolean |
108 | |
109 | * Specify `true` to allow sharing of limited details on issues to anonymous users. |
110 | */ |
111 | allowSharedIssues?: boolean |
112 | |
113 | * Specify `true` to enable enhanced privacy controls to limit personally identifiable information (PII) as well as source code in things like notifications. |
114 | */ |
115 | enhancedPrivacy?: boolean |
116 | |
117 | * Specify `true` to allow Sentry to scrape missing JavaScript source context when possible. |
118 | */ |
119 | scrapeJavaScript?: boolean |
120 | |
121 | * How many native crash reports (such as Minidumps for improved processing and download in issue details) to store per issue. |
122 | * |
123 | * * `0` - Disabled |
124 | * * `1` - 1 per issue |
125 | * * `5` - 5 per issue |
126 | * * `10` - 10 per issue |
127 | * * `20` - 20 per issue |
128 | * * `50` - 50 per issue |
129 | * * `100` - 100 per issue |
130 | * * `-1` - Unlimited |
131 | */ |
132 | storeCrashReports?: 0 | 1 | 5 | 10 | 20 | 50 | 100 | -1 |
133 | |
134 | * Specify `true` to allow users to request to join your organization. |
135 | */ |
136 | allowJoinRequests?: boolean |
137 | |
138 | * Specify `true` to require server-side data scrubbing for all projects. |
139 | */ |
140 | dataScrubber?: boolean |
141 | |
142 | * Specify `true` to apply the default scrubbers to prevent things like passwords and credit cards from being stored for all projects. |
143 | */ |
144 | dataScrubberDefaults?: boolean |
145 | |
146 | * A list of additional global field names to match against when scrubbing data for all projects. |
147 | */ |
148 | sensitiveFields?: string[] |
149 | |
150 | * A list of global field names which data scrubbers should ignore. |
151 | */ |
152 | safeFields?: string[] |
153 | |
154 | * Specify `true` to prevent IP addresses from being stored for new events on all projects. |
155 | */ |
156 | scrubIPAddresses?: boolean |
157 | |
158 | * Advanced data scrubbing rules that can be configured for each project as a JSON string. The new rules will only apply to new incoming events. For more details on advanced data scrubbing, see our [full documentation](/security-legal-pii/scrubbing/advanced-datascrubbing/). |
159 | * |
160 | * > Warning: Calling this endpoint with this field fully overwrites the advanced data scrubbing rules. |
161 | * |
162 | * Below is an example of a payload for a set of advanced data scrubbing rules for masking credit card numbers from the log message (equivalent to `[Mask] [Credit card numbers] from [$message]` in the Sentry app) and removing a specific key called `foo` (equivalent to `[Remove] [Anything] from [extra.foo]` in the Sentry app): |
163 | * ```json |
164 | * { |
165 | * relayPiiConfig: "{\"rules":{\"0\":{\"type\":\"creditcard\",\"redaction\":{\"method\":\"mask\"}},\"1\":{\"type\":\"anything\",\"redaction\":{\"method\":\"remove\"}}},\"applications\":{\"$message\":[\"0\"],\"extra.foo\":[\"1\"]}}" |
166 | * } |
167 | * ``` |
168 | * |
169 | */ |
170 | relayPiiConfig?: string |
171 | |
172 | * A list of local Relays (the name, public key, and description as a JSON) registered for the organization. This feature is only available for organizations on the Business and Enterprise plans. Read more about Relay [here](/product/relay/). |
173 | * |
174 | * Below is an example of a list containing a single local Relay registered for the organization: |
175 | * ```json |
176 | * { |
177 | * trustedRelays: [ |
178 | * { |
179 | * name: "my-relay", |
180 | * publicKey: "eiwr9fdruw4erfh892qy4493reyf89ur34wefd90h", |
181 | * description: "Configuration for my-relay." |
182 | * } |
183 | * ] |
184 | * } |
185 | * ``` |
186 | * |
187 | */ |
188 | trustedRelays?: { |
189 | [k: string]: unknown |
190 | }[] |
191 | |
192 | * Specify `true` to allow Sentry to comment on recent pull requests suspected of causing issues. Requires a GitHub integration. |
193 | */ |
194 | githubPRBot?: boolean |
195 | |
196 | * Specify `true` to allow Sentry to comment on open pull requests to show recent error issues for the code being changed. Requires a GitHub integration. |
197 | */ |
198 | githubOpenPRBot?: boolean |
199 | |
200 | * Specify `true` to allow Sentry to detect users committing to your GitHub repositories that are not part of your Sentry organization. Requires a GitHub integration. |
201 | */ |
202 | githubNudgeInvite?: boolean |
203 | |
204 | * Specify `true` to allow Sentry to comment on recent pull requests suspected of causing issues. Requires a GitLab integration. |
205 | */ |
206 | gitlabPRBot?: boolean |
207 | |
208 | * Specify `true` to allow Sentry to comment on open pull requests to show recent error issues for the code being changed. Requires a GitLab integration. |
209 | */ |
210 | gitlabOpenPRBot?: boolean |
211 | |
212 | * Specify `true` to allow the Sentry Slack integration to post replies in threads for an Issue Alert notification. Requires a Slack integration. |
213 | */ |
214 | issueAlertsThreadFlag?: boolean |
215 | |
216 | * Specify `true` to allow the Sentry Slack integration to post replies in threads for a Metric Alert notification. Requires a Slack integration. |
217 | */ |
218 | metricAlertsThreadFlag?: boolean |
219 | |
220 | * Specify `true` to restore an organization that is pending deletion. |
221 | */ |
222 | cancelDeletion?: boolean |
223 | [k: string]: unknown |
224 | } |
225 |
|