Members
List organization members
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/members \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'
GET /organizations/{organization}/members
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
organization | path | string | true | Organization ID | 
Example responses
200 Response
[
	{
		"avatar_url": "string",
		"created_at": "2019-08-24T14:15:22Z",
		"email": "string",
		"global_roles": [
			{
				"display_name": "string",
				"name": "string",
				"organization_id": "string"
			}
		],
		"name": "string",
		"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
		"roles": [
			{
				"display_name": "string",
				"name": "string",
				"organization_id": "string"
			}
		],
		"updated_at": "2019-08-24T14:15:22Z",
		"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
		"username": "string"
	}
]
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | OK | array of codersdk.OrganizationMemberWithUserData | 
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
[array item] | array | false | ||
» avatar_url | string | false | ||
» created_at | string(date-time) | false | ||
» email | string | false | ||
» global_roles | array | false | ||
»» display_name | string | false | ||
»» name | string | false | ||
»» organization_id | string | false | ||
» name | string | false | ||
» organization_id | string(uuid) | false | ||
» roles | array | false | ||
» updated_at | string(date-time) | false | ||
» user_id | string(uuid) | false | ||
» username | string | false | 
To perform this operation, you must be authenticated. Learn more.
Get member roles by organization
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/organizations/{organization}/members/roles \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'
GET /organizations/{organization}/members/roles
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
organization | path | string(uuid) | true | Organization ID | 
Example responses
200 Response
[
	{
		"assignable": true,
		"built_in": true,
		"display_name": "string",
		"name": "string",
		"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
		"organization_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"site_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"user_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		]
	}
]
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | OK | array of codersdk.AssignableRoles | 
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
[array item] | array | false | ||
» assignable | boolean | false | ||
» built_in | boolean | false | Built in roles are immutable | |
» display_name | string | false | ||
» name | string | false | ||
» organization_id | string(uuid) | false | ||
» organization_permissions | array | false | Organization permissions are specific for the organization in the field 'OrganizationID' above. | |
»» action | codersdk.RBACAction | false | ||
»» negate | boolean | false | Negate makes this a negative permission | |
»» resource_type | codersdk.RBACResource | false | ||
» site_permissions | array | false | ||
» user_permissions | array | false | 
Enumerated Values
| Property | Value | 
|---|---|
action | application_connect | 
action | assign | 
action | create | 
action | delete | 
action | read | 
action | read_personal | 
action | ssh | 
action | update | 
action | update_personal | 
action | use | 
action | view_insights | 
action | start | 
action | stop | 
resource_type | * | 
resource_type | api_key | 
resource_type | assign_org_role | 
resource_type | assign_role | 
resource_type | audit_log | 
resource_type | crypto_key | 
resource_type | debug_info | 
resource_type | deployment_config | 
resource_type | deployment_stats | 
resource_type | file | 
resource_type | group | 
resource_type | group_member | 
resource_type | idpsync_settings | 
resource_type | license | 
resource_type | notification_preference | 
resource_type | notification_template | 
resource_type | oauth2_app | 
resource_type | oauth2_app_code_token | 
resource_type | oauth2_app_secret | 
resource_type | organization | 
resource_type | organization_member | 
resource_type | provisioner_daemon | 
resource_type | provisioner_keys | 
resource_type | replicas | 
resource_type | system | 
resource_type | tailnet_coordinator | 
resource_type | template | 
resource_type | user | 
resource_type | workspace | 
resource_type | workspace_dormant | 
resource_type | workspace_proxy | 
To perform this operation, you must be authenticated. Learn more.
Upsert a custom organization role
Code samples
# Example request using curl
curl -X PUT http://coder-server:8080/api/v2/organizations/{organization}/members/roles \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'
PUT /organizations/{organization}/members/roles
Body parameter
{
	"display_name": "string",
	"name": "string",
	"organization_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"site_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"user_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	]
}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
organization | path | string(uuid) | true | Organization ID | 
body | body | codersdk.CustomRoleRequest | true | Upsert role request | 
Example responses
200 Response
[
	{
		"display_name": "string",
		"name": "string",
		"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
		"organization_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"site_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"user_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		]
	}
]
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | OK | array of codersdk.Role | 
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
[array item] | array | false | ||
» display_name | string | false | ||
» name | string | false | ||
» organization_id | string(uuid) | false | ||
» organization_permissions | array | false | Organization permissions are specific for the organization in the field 'OrganizationID' above. | |
»» action | codersdk.RBACAction | false | ||
»» negate | boolean | false | Negate makes this a negative permission | |
»» resource_type | codersdk.RBACResource | false | ||
» site_permissions | array | false | ||
» user_permissions | array | false | 
Enumerated Values
| Property | Value | 
|---|---|
action | application_connect | 
action | assign | 
action | create | 
action | delete | 
action | read | 
action | read_personal | 
action | ssh | 
action | update | 
action | update_personal | 
action | use | 
action | view_insights | 
action | start | 
action | stop | 
resource_type | * | 
resource_type | api_key | 
resource_type | assign_org_role | 
resource_type | assign_role | 
resource_type | audit_log | 
resource_type | crypto_key | 
resource_type | debug_info | 
resource_type | deployment_config | 
resource_type | deployment_stats | 
resource_type | file | 
resource_type | group | 
resource_type | group_member | 
resource_type | idpsync_settings | 
resource_type | license | 
resource_type | notification_preference | 
resource_type | notification_template | 
resource_type | oauth2_app | 
resource_type | oauth2_app_code_token | 
resource_type | oauth2_app_secret | 
resource_type | organization | 
resource_type | organization_member | 
resource_type | provisioner_daemon | 
resource_type | provisioner_keys | 
resource_type | replicas | 
resource_type | system | 
resource_type | tailnet_coordinator | 
resource_type | template | 
resource_type | user | 
resource_type | workspace | 
resource_type | workspace_dormant | 
resource_type | workspace_proxy | 
To perform this operation, you must be authenticated. Learn more.
Insert a custom organization role
Code samples
# Example request using curl
curl -X POST http://coder-server:8080/api/v2/organizations/{organization}/members/roles \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'
POST /organizations/{organization}/members/roles
Body parameter
{
	"display_name": "string",
	"name": "string",
	"organization_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"site_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	],
	"user_permissions": [
		{
			"action": "application_connect",
			"negate": true,
			"resource_type": "*"
		}
	]
}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
organization | path | string(uuid) | true | Organization ID | 
body | body | codersdk.CustomRoleRequest | true | Insert role request | 
Example responses
200 Response
[
	{
		"display_name": "string",
		"name": "string",
		"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
		"organization_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"site_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"user_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		]
	}
]
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | OK | array of codersdk.Role | 
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
[array item] | array | false | ||
» display_name | string | false | ||
» name | string | false | ||
» organization_id | string(uuid) | false | ||
» organization_permissions | array | false | Organization permissions are specific for the organization in the field 'OrganizationID' above. | |
»» action | codersdk.RBACAction | false | ||
»» negate | boolean | false | Negate makes this a negative permission | |
»» resource_type | codersdk.RBACResource | false | ||
» site_permissions | array | false | ||
» user_permissions | array | false | 
Enumerated Values
| Property | Value | 
|---|---|
action | application_connect | 
action | assign | 
action | create | 
action | delete | 
action | read | 
action | read_personal | 
action | ssh | 
action | update | 
action | update_personal | 
action | use | 
action | view_insights | 
action | start | 
action | stop | 
resource_type | * | 
resource_type | api_key | 
resource_type | assign_org_role | 
resource_type | assign_role | 
resource_type | audit_log | 
resource_type | crypto_key | 
resource_type | debug_info | 
resource_type | deployment_config | 
resource_type | deployment_stats | 
resource_type | file | 
resource_type | group | 
resource_type | group_member | 
resource_type | idpsync_settings | 
resource_type | license | 
resource_type | notification_preference | 
resource_type | notification_template | 
resource_type | oauth2_app | 
resource_type | oauth2_app_code_token | 
resource_type | oauth2_app_secret | 
resource_type | organization | 
resource_type | organization_member | 
resource_type | provisioner_daemon | 
resource_type | provisioner_keys | 
resource_type | replicas | 
resource_type | system | 
resource_type | tailnet_coordinator | 
resource_type | template | 
resource_type | user | 
resource_type | workspace | 
resource_type | workspace_dormant | 
resource_type | workspace_proxy | 
To perform this operation, you must be authenticated. Learn more.
Delete a custom organization role
Code samples
# Example request using curl
curl -X DELETE http://coder-server:8080/api/v2/organizations/{organization}/members/roles/{roleName} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'
DELETE /organizations/{organization}/members/roles/{roleName}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
organization | path | string(uuid) | true | Organization ID | 
roleName | path | string | true | Role name | 
Example responses
200 Response
[
	{
		"display_name": "string",
		"name": "string",
		"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
		"organization_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"site_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"user_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		]
	}
]
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | OK | array of codersdk.Role | 
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
[array item] | array | false | ||
» display_name | string | false | ||
» name | string | false | ||
» organization_id | string(uuid) | false | ||
» organization_permissions | array | false | Organization permissions are specific for the organization in the field 'OrganizationID' above. | |
»» action | codersdk.RBACAction | false | ||
»» negate | boolean | false | Negate makes this a negative permission | |
»» resource_type | codersdk.RBACResource | false | ||
» site_permissions | array | false | ||
» user_permissions | array | false | 
Enumerated Values
| Property | Value | 
|---|---|
action | application_connect | 
action | assign | 
action | create | 
action | delete | 
action | read | 
action | read_personal | 
action | ssh | 
action | update | 
action | update_personal | 
action | use | 
action | view_insights | 
action | start | 
action | stop | 
resource_type | * | 
resource_type | api_key | 
resource_type | assign_org_role | 
resource_type | assign_role | 
resource_type | audit_log | 
resource_type | crypto_key | 
resource_type | debug_info | 
resource_type | deployment_config | 
resource_type | deployment_stats | 
resource_type | file | 
resource_type | group | 
resource_type | group_member | 
resource_type | idpsync_settings | 
resource_type | license | 
resource_type | notification_preference | 
resource_type | notification_template | 
resource_type | oauth2_app | 
resource_type | oauth2_app_code_token | 
resource_type | oauth2_app_secret | 
resource_type | organization | 
resource_type | organization_member | 
resource_type | provisioner_daemon | 
resource_type | provisioner_keys | 
resource_type | replicas | 
resource_type | system | 
resource_type | tailnet_coordinator | 
resource_type | template | 
resource_type | user | 
resource_type | workspace | 
resource_type | workspace_dormant | 
resource_type | workspace_proxy | 
To perform this operation, you must be authenticated. Learn more.
Add organization member
Code samples
# Example request using curl
curl -X POST http://coder-server:8080/api/v2/organizations/{organization}/members/{user} \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'
POST /organizations/{organization}/members/{user}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
organization | path | string | true | Organization ID | 
user | path | string | true | User ID, name, or me | 
Example responses
200 Response
{
	"created_at": "2019-08-24T14:15:22Z",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"roles": [
		{
			"display_name": "string",
			"name": "string",
			"organization_id": "string"
		}
	],
	"updated_at": "2019-08-24T14:15:22Z",
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | OK | codersdk.OrganizationMember | 
To perform this operation, you must be authenticated. Learn more.
Remove organization member
Code samples
# Example request using curl
curl -X DELETE http://coder-server:8080/api/v2/organizations/{organization}/members/{user} \
  -H 'Coder-Session-Token: API_KEY'
DELETE /organizations/{organization}/members/{user}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
organization | path | string | true | Organization ID | 
user | path | string | true | User ID, name, or me | 
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 204 | No Content | No Content | 
To perform this operation, you must be authenticated. Learn more.
Assign role to organization member
Code samples
# Example request using curl
curl -X PUT http://coder-server:8080/api/v2/organizations/{organization}/members/{user}/roles \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'
PUT /organizations/{organization}/members/{user}/roles
Body parameter
{
	"roles": ["string"]
}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
organization | path | string | true | Organization ID | 
user | path | string | true | User ID, name, or me | 
body | body | codersdk.UpdateRoles | true | Update roles request | 
Example responses
200 Response
{
	"created_at": "2019-08-24T14:15:22Z",
	"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
	"roles": [
		{
			"display_name": "string",
			"name": "string",
			"organization_id": "string"
		}
	],
	"updated_at": "2019-08-24T14:15:22Z",
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | OK | codersdk.OrganizationMember | 
To perform this operation, you must be authenticated. Learn more.
Get site member roles
Code samples
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/users/roles \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'
GET /users/roles
Example responses
200 Response
[
	{
		"assignable": true,
		"built_in": true,
		"display_name": "string",
		"name": "string",
		"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
		"organization_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"site_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		],
		"user_permissions": [
			{
				"action": "application_connect",
				"negate": true,
				"resource_type": "*"
			}
		]
	}
]
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | OK | array of codersdk.AssignableRoles | 
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
[array item] | array | false | ||
» assignable | boolean | false | ||
» built_in | boolean | false | Built in roles are immutable | |
» display_name | string | false | ||
» name | string | false | ||
» organization_id | string(uuid) | false | ||
» organization_permissions | array | false | Organization permissions are specific for the organization in the field 'OrganizationID' above. | |
»» action | codersdk.RBACAction | false | ||
»» negate | boolean | false | Negate makes this a negative permission | |
»» resource_type | codersdk.RBACResource | false | ||
» site_permissions | array | false | ||
» user_permissions | array | false | 
Enumerated Values
| Property | Value | 
|---|---|
action | application_connect | 
action | assign | 
action | create | 
action | delete | 
action | read | 
action | read_personal | 
action | ssh | 
action | update | 
action | update_personal | 
action | use | 
action | view_insights | 
action | start | 
action | stop | 
resource_type | * | 
resource_type | api_key | 
resource_type | assign_org_role | 
resource_type | assign_role | 
resource_type | audit_log | 
resource_type | crypto_key | 
resource_type | debug_info | 
resource_type | deployment_config | 
resource_type | deployment_stats | 
resource_type | file | 
resource_type | group | 
resource_type | group_member | 
resource_type | idpsync_settings | 
resource_type | license | 
resource_type | notification_preference | 
resource_type | notification_template | 
resource_type | oauth2_app | 
resource_type | oauth2_app_code_token | 
resource_type | oauth2_app_secret | 
resource_type | organization | 
resource_type | organization_member | 
resource_type | provisioner_daemon | 
resource_type | provisioner_keys | 
resource_type | replicas | 
resource_type | system | 
resource_type | tailnet_coordinator | 
resource_type | template | 
resource_type | user | 
resource_type | workspace | 
resource_type | workspace_dormant | 
resource_type | workspace_proxy | 
To perform this operation, you must be authenticated. Learn more.

