Updates a property for the given user.
1
//native
2
type Confluence = {
3
email: string
4
apiToken: string
5
domain: string
6
}
7
/**
8
* Update user property
9
* Updates a property for the given user.
10
*/
11
export async function main(auth: Confluence, userId: string, key: string, body: { value: {} }) {
12
const url = new URL(`https://${auth.domain}/wiki/rest/api/user/${userId}/property/${key}`)
13
14
const response = await fetch(url, {
15
method: 'PUT',
16
headers: {
17
'Content-Type': 'application/json',
18
Authorization: 'Basic ' + btoa(`${auth.email}:${auth.apiToken}`)
19
},
20
body: JSON.stringify(body)
21
})
22
if (!response.ok) {
23
const text = await response.text()
24
throw new Error(`${response.status} ${text}`)
25
26
return await response.text()
27
28