Skip to content

Update a service account

PUT
/api/security/serviceAccounts/{id}
curl --request PUT \
--url https://example.com/api/security/serviceAccounts/example \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "name": "example", "description": "example", "roles": [ "example" ], "groups": [ "example" ], "repos": [ { "CACHE_ROOT": "my-repo", "id": "repo-123", "permission": "write" } ] }'

Updates an existing service account

id
required

Service account ID

string
Media typeapplication/json
object
name

Display name

string
description

Description

string
roles

Role assignments

Array<string>
groups

Group memberships

Array<string>
repos

Repository permissions

Array<object>
object
CACHE_ROOT
required

Repository namespace

string
Example
my-repo
id
required

Repository ID

string
Example
repo-123
permission
required

Permission level (view, write, admin)

string
Example
write

Service account updated successfully

Media typeapplication/json
object
id
required

Service account ID

string
secret
required

Service account secret — bcrypt hash in storage; the plaintext value is only returned once at creation time.

string
searchId
required

Searchable ID

string
name
required

Service account name

string
repos

Repository permissions

Array<object>
default:
object
CACHE_ROOT
required

Repository namespace

string
id
required

Repository ID

string
permission
required

Permission level (view, write, admin)

string
roles

Assigned roles

Array<string>
default:
groups

Group memberships

Array<string>
default:
type

Entity type

string
default: serviceAccount
description

Service account description

string
""
Example
{
"id": "api-service",
"searchId": "api-service",
"name": "API Service",
"repos": [],
"roles": [],
"groups": [],
"type": "serviceAccount",
"description": ""
}

Invalid request