Deletes org-level custom claims of OIDC identity tokens
1
//native
2
type Circleci = {
3
token: string
4
}
5
/**
6
* Delete org-level claims
7
* Deletes org-level custom claims of OIDC identity tokens
8
*/
9
export async function main(auth: Circleci, orgID: string, claims: string | undefined) {
10
const url = new URL(`https://circleci.com/api/v2/org/${orgID}/oidc-custom-claims`)
11
for (const [k, v] of [['claims', claims]]) {
12
if (v !== undefined && v !== '' && k !== undefined) {
13
url.searchParams.append(k, v)
14
15
16
const response = await fetch(url, {
17
method: 'DELETE',
18
headers: {
19
'Circle-Token': auth.token
20
},
21
body: undefined
22
})
23
if (!response.ok) {
24
const text = await response.text()
25
throw new Error(`${response.status} ${text}`)
26
27
return await response.json()
28
29