Get appearance
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/appearance \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /appearance
Example responses
200 Response
{
"logo_url": "string",
"service_banner": {
"background_color": "string",
"enabled": true,
"message": "string"
}
}
Responses
To perform this operation, you must be authenticated. Learn more .
Update appearance
Code samples
# Example request using curl
curl -X PUT http://coder-server:8080/api/v2/appearance \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
PUT /appearance
Body parameter
{
"logo_url": "string",
"service_banner": {
"background_color": "string",
"enabled": true,
"message": "string"
}
}
Parameters
Example responses
200 Response
{
"logo_url": "string",
"service_banner": {
"background_color": "string",
"enabled": true,
"message": "string"
}
}
Responses
To perform this operation, you must be authenticated. Learn more .
Get entitlements
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/entitlements \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /entitlements
Example responses
200 Response
{
"errors": ["string"],
"experimental": true,
"features": {
"property1": {
"actual": 0,
"enabled": true,
"entitlement": "entitled",
"limit": 0
},
"property2": {
"actual": 0,
"enabled": true,
"entitlement": "entitled",
"limit": 0
}
},
"has_license": true,
"trial": true,
"warnings": ["string"]
}
Responses
To perform this operation, you must be authenticated. Learn more .
Get groups
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/groups \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /groups
Parameters
Name In Type Required Description organizationpath string(uuid) true Organization ID
Example responses
200 Response
[
{
"avatar_url": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"members": [
{
"avatar_url": "http://example.com",
"created_at": "2019-08-24T14:15:22Z",
"email": "[email protected] ",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"last_seen_at": "2019-08-24T14:15:22Z",
"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
"roles": [
{
"display_name": "string",
"name": "string"
}
],
"status": "active",
"username": "string"
}
],
"name": "string",
"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
"quota_allowance": 0
}
]
Responses
Response Schema
Status Code 200
Name Type Required Restrictions Description [array item]array false » avatar_urlstring false » idstring(uuid) false » membersarray false »» avatar_urlstring(uri) false »» created_atstring(date-time) true »» emailstring(email) true »» idstring(uuid) true »» last_seen_atstring(date-time) false »» organization_idsarray false »» rolesarray false »»» display_namestring false »»» namestring false »» statuscodersdk.UserStatus false »» usernamestring true » namestring false » organization_idstring(uuid) false » quota_allowanceinteger false
Enumerated Values
Property Value statusactivestatussuspended
To perform this operation, you must be authenticated. Learn more .
Get group by name
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/groups/{group} \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /groups/{group}
Parameters
Name In Type Required Description grouppath string true Group name
Example responses
200 Response
{
"avatar_url": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"members": [
{
"avatar_url": "http://example.com",
"created_at": "2019-08-24T14:15:22Z",
"email": "[email protected] ",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"last_seen_at": "2019-08-24T14:15:22Z",
"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
"roles": [
{
"display_name": "string",
"name": "string"
}
],
"status": "active",
"username": "string"
}
],
"name": "string",
"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
"quota_allowance": 0
}
Responses
To perform this operation, you must be authenticated. Learn more .
Delete group by name
Code samples
# Example request using curl
curl -X DELETE http://coder-server:8080/api/v2/groups/{group} \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
DELETE /groups/{group}
Parameters
Name In Type Required Description grouppath string true Group name
Example responses
200 Response
{
"avatar_url": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"members": [
{
"avatar_url": "http://example.com",
"created_at": "2019-08-24T14:15:22Z",
"email": "[email protected] ",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"last_seen_at": "2019-08-24T14:15:22Z",
"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
"roles": [
{
"display_name": "string",
"name": "string"
}
],
"status": "active",
"username": "string"
}
],
"name": "string",
"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
"quota_allowance": 0
}
Responses
To perform this operation, you must be authenticated. Learn more .
Update group by name
Code samples
# Example request using curl
curl -X PATCH http://coder-server:8080/api/v2/groups/{group} \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
PATCH /groups/{group}
Parameters
Name In Type Required Description grouppath string true Group name
Example responses
200 Response
{
"avatar_url": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"members": [
{
"avatar_url": "http://example.com",
"created_at": "2019-08-24T14:15:22Z",
"email": "[email protected] ",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"last_seen_at": "2019-08-24T14:15:22Z",
"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
"roles": [
{
"display_name": "string",
"name": "string"
}
],
"status": "active",
"username": "string"
}
],
"name": "string",
"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
"quota_allowance": 0
}
Responses
To perform this operation, you must be authenticated. Learn more .
Get licenses
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/licenses \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /licenses
Example responses
200 Response
[
{
"claims": {},
"id": 0,
"uploaded_at": "2019-08-24T14:15:22Z",
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}
]
Responses
Response Schema
Status Code 200
Name Type Required Restrictions Description [array item]array false » claimsobject false Claims are the JWT claims asserted by the license. Here we use a generic string map to ensure that all data from the server is parsed verbatim, not just the fields this version of Coder understands. » idinteger false » uploaded_atstring(date-time) false » uuidstring(uuid) false
To perform this operation, you must be authenticated. Learn more .
Delete license
Code samples
# Example request using curl
curl -X DELETE http://coder-server:8080/api/v2/licenses/{id} \
-H 'Coder-Session-Token: API_KEY'
DELETE /licenses/{id}
Parameters
Name In Type Required Description idpath string(number) true License ID
Responses
Status Meaning Description Schema 200 OK OK
To perform this operation, you must be authenticated. Learn more .
Get groups by organization
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/groups \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /organizations/{organization}/groups
Parameters
Name In Type Required Description organizationpath string(uuid) true Organization ID
Example responses
200 Response
[
{
"avatar_url": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"members": [
{
"avatar_url": "http://example.com",
"created_at": "2019-08-24T14:15:22Z",
"email": "[email protected] ",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"last_seen_at": "2019-08-24T14:15:22Z",
"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
"roles": [
{
"display_name": "string",
"name": "string"
}
],
"status": "active",
"username": "string"
}
],
"name": "string",
"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
"quota_allowance": 0
}
]
Responses
Response Schema
Status Code 200
Name Type Required Restrictions Description [array item]array false » avatar_urlstring false » idstring(uuid) false » membersarray false »» avatar_urlstring(uri) false »» created_atstring(date-time) true »» emailstring(email) true »» idstring(uuid) true »» last_seen_atstring(date-time) false »» organization_idsarray false »» rolesarray false »»» display_namestring false »»» namestring false »» statuscodersdk.UserStatus false »» usernamestring true » namestring false » organization_idstring(uuid) false » quota_allowanceinteger false
Enumerated Values
Property Value statusactivestatussuspended
To perform this operation, you must be authenticated. Learn more .
Get group by organization and group name
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/groups/{groupName} \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /organizations/{organization}/groups/{groupName}
Parameters
Name In Type Required Description organizationpath string(uuid) true Organization ID groupNamepath string true Group name
Example responses
200 Response
{
"avatar_url": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"members": [
{
"avatar_url": "http://example.com",
"created_at": "2019-08-24T14:15:22Z",
"email": "[email protected] ",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"last_seen_at": "2019-08-24T14:15:22Z",
"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
"roles": [
{
"display_name": "string",
"name": "string"
}
],
"status": "active",
"username": "string"
}
],
"name": "string",
"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
"quota_allowance": 0
}
Responses
To perform this operation, you must be authenticated. Learn more .
Get provisioner daemons
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/provisionerdaemons \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /organizations/{organization}/provisionerdaemons
Parameters
Name In Type Required Description organizationpath string(uuid) true Organization ID
Example responses
200 Response
[
{
"created_at": "2019-08-24T14:15:22Z",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"provisioners": ["string"],
"tags": {
"property1": "string",
"property2": "string"
},
"updated_at": {
"time": "string",
"valid": true
}
}
]
Responses
Response Schema
Status Code 200
Name Type Required Restrictions Description [array item]array false » created_atstring(date-time) false » idstring(uuid) false » namestring false » provisionersarray false » tagsobject false »» [any property]string false » updated_atsql.NullTime false »» timestring false »» validboolean false Valid is true if Time is not NULL
To perform this operation, you must be authenticated. Learn more .
Serve provisioner daemon
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/provisionerdaemons/serve \
-H 'Coder-Session-Token: API_KEY'
GET /organizations/{organization}/provisionerdaemons/serve
Parameters
Name In Type Required Description organizationpath string(uuid) true Organization ID
Responses
To perform this operation, you must be authenticated. Learn more .
Get active replicas
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/replicas \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /replicas
Example responses
200 Response
[
{
"created_at": "2019-08-24T14:15:22Z",
"database_latency": 0,
"error": "string",
"hostname": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"region_id": 0,
"relay_address": "string"
}
]
Responses
Response Schema
Status Code 200
Name Type Required Restrictions Description [array item]array false » created_atstring(date-time) false Created at is the timestamp when the replica was first seen. » database_latencyinteger false Database latency is the latency in microseconds to the database. » errorstring false Error is the replica error. » hostnamestring false Hostname is the hostname of the replica. » idstring(uuid) false ID is the unique identifier for the replica. » region_idinteger false Region ID is the region of the replica. » relay_addressstring false Relay address is the accessible address to relay DERP connections.
To perform this operation, you must be authenticated. Learn more .
SCIM 2.0: Get users
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/scim/v2/Users \
-H 'Coder-Session-Token: API_KEY'
GET /scim/v2/Users
Responses
Status Meaning Description Schema 200 OK OK
To perform this operation, you must be authenticated. Learn more .
SCIM 2.0: Create new user
Code samples
# Example request using curl
curl -X POST http://coder-server:8080/api/v2/scim/v2/Users \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
POST /scim/v2/Users
Body parameter
{
"active": true,
"emails": [
{
"display": "string",
"primary": true,
"type": "string",
"value": "[email protected] "
}
],
"groups": [null],
"id": "string",
"meta": {
"resourceType": "string"
},
"name": {
"familyName": "string",
"givenName": "string"
},
"schemas": ["string"],
"userName": "string"
}
Parameters
Example responses
200 Response
{
"active": true,
"emails": [
{
"display": "string",
"primary": true,
"type": "string",
"value": "[email protected] "
}
],
"groups": [null],
"id": "string",
"meta": {
"resourceType": "string"
},
"name": {
"familyName": "string",
"givenName": "string"
},
"schemas": ["string"],
"userName": "string"
}
Responses
To perform this operation, you must be authenticated. Learn more .
SCIM 2.0: Get user by ID
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/scim/v2/Users/{id} \
-H 'Coder-Session-Token: API_KEY'
GET /scim/v2/Users/{id}
Parameters
Name In Type Required Description idpath string(uuid) true User ID
Responses
Status Meaning Description Schema 404 Not Found Not Found
To perform this operation, you must be authenticated. Learn more .
SCIM 2.0: Update user account
Code samples
# Example request using curl
curl -X PATCH http://coder-server:8080/api/v2/scim/v2/Users/{id} \
-H 'Content-Type: application/json' \
-H 'Accept: application/scim+json' \
-H 'Coder-Session-Token: API_KEY'
PATCH /scim/v2/Users/{id}
Body parameter
{
"active": true,
"emails": [
{
"display": "string",
"primary": true,
"type": "string",
"value": "[email protected] "
}
],
"groups": [null],
"id": "string",
"meta": {
"resourceType": "string"
},
"name": {
"familyName": "string",
"givenName": "string"
},
"schemas": ["string"],
"userName": "string"
}
Parameters
Name In Type Required Description idpath string(uuid) true User ID bodybody coderd.SCIMUser true Update user request
Example responses
200 Response
{
"avatar_url": "http://example.com",
"created_at": "2019-08-24T14:15:22Z",
"email": "[email protected] ",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"last_seen_at": "2019-08-24T14:15:22Z",
"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
"roles": [
{
"display_name": "string",
"name": "string"
}
],
"status": "active",
"username": "string"
}
Responses
To perform this operation, you must be authenticated. Learn more .
Get template ACLs
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/templates/{template}/acl \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /templates/{template}/acl
Parameters
Name In Type Required Description templatepath string(uuid) true Template ID
Example responses
200 Response
[
{
"avatar_url": "http://example.com",
"created_at": "2019-08-24T14:15:22Z",
"email": "[email protected] ",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"last_seen_at": "2019-08-24T14:15:22Z",
"organization_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
"role": "admin",
"roles": [
{
"display_name": "string",
"name": "string"
}
],
"status": "active",
"username": "string"
}
]
Responses
Response Schema
Status Code 200
Name Type Required Restrictions Description [array item]array false » avatar_urlstring(uri) false » created_atstring(date-time) true » emailstring(email) true » idstring(uuid) true » last_seen_atstring(date-time) false » organization_idsarray false » rolecodersdk.TemplateRole false » rolesarray false »» display_namestring false »» namestring false » statuscodersdk.UserStatus false » usernamestring true
Enumerated Values
Property Value roleadminroleusestatusactivestatussuspended
To perform this operation, you must be authenticated. Learn more .
Update template ACL
Code samples
# Example request using curl
curl -X PATCH http://coder-server:8080/api/v2/templates/{template}/acl \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
PATCH /templates/{template}/acl
Body parameter
{
"group_perms": {
"property1": "admin",
"property2": "admin"
},
"user_perms": {
"property1": "admin",
"property2": "admin"
}
}
Parameters
Example responses
200 Response
{
"detail": "string",
"message": "string",
"validations": [
{
"detail": "string",
"field": "string"
}
]
}
Responses
To perform this operation, you must be authenticated. Learn more .
Get workspace quota by user
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/workspace-quota/{user} \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
GET /workspace-quota/{user}
Parameters
Name In Type Required Description userpath string true User ID, name, or me
Example responses
200 Response
{
"budget": 0,
"credits_consumed": 0
}
Responses
To perform this operation, you must be authenticated. Learn more .