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

NameInTypeRequiredDescription
organizationpathstringtrueOrganization 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

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.OrganizationMemberWithUserData

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» avatar_urlstringfalse
» created_atstring(date-time)false
» emailstringfalse
» global_rolesarrayfalse
»» display_namestringfalse
»» namestringfalse
»» organization_idstringfalse
» namestringfalse
» organization_idstring(uuid)false
» rolesarrayfalse
» updated_atstring(date-time)false
» user_idstring(uuid)false
» usernamestringfalse

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

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization 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

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.AssignableRoles

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» assignablebooleanfalse
» built_inbooleanfalseBuilt in roles are immutable
» display_namestringfalse
» namestringfalse
» organization_idstring(uuid)false
» organization_permissionsarrayfalseOrganization permissions are specific for the organization in the field 'OrganizationID' above.
»» actioncodersdk.RBACActionfalse
»» negatebooleanfalseNegate makes this a negative permission
»» resource_typecodersdk.RBACResourcefalse
» site_permissionsarrayfalse
» user_permissionsarrayfalse

Enumerated Values

PropertyValue
actionapplication_connect
actionassign
actioncreate
actiondelete
actionread
actionread_personal
actionssh
actionupdate
actionupdate_personal
actionuse
actionview_insights
actionstart
actionstop
resource_type*
resource_typeapi_key
resource_typeassign_org_role
resource_typeassign_role
resource_typeaudit_log
resource_typecrypto_key
resource_typedebug_info
resource_typedeployment_config
resource_typedeployment_stats
resource_typefile
resource_typegroup
resource_typegroup_member
resource_typeidpsync_settings
resource_typelicense
resource_typenotification_message
resource_typenotification_preference
resource_typenotification_template
resource_typeoauth2_app
resource_typeoauth2_app_code_token
resource_typeoauth2_app_secret
resource_typeorganization
resource_typeorganization_member
resource_typeprovisioner_daemon
resource_typeprovisioner_keys
resource_typereplicas
resource_typesystem
resource_typetailnet_coordinator
resource_typetemplate
resource_typeuser
resource_typeworkspace
resource_typeworkspace_dormant
resource_typeworkspace_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

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization ID
bodybodycodersdk.CustomRoleRequesttrueUpsert 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

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.Role

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» display_namestringfalse
» namestringfalse
» organization_idstring(uuid)false
» organization_permissionsarrayfalseOrganization permissions are specific for the organization in the field 'OrganizationID' above.
»» actioncodersdk.RBACActionfalse
»» negatebooleanfalseNegate makes this a negative permission
»» resource_typecodersdk.RBACResourcefalse
» site_permissionsarrayfalse
» user_permissionsarrayfalse

Enumerated Values

PropertyValue
actionapplication_connect
actionassign
actioncreate
actiondelete
actionread
actionread_personal
actionssh
actionupdate
actionupdate_personal
actionuse
actionview_insights
actionstart
actionstop
resource_type*
resource_typeapi_key
resource_typeassign_org_role
resource_typeassign_role
resource_typeaudit_log
resource_typecrypto_key
resource_typedebug_info
resource_typedeployment_config
resource_typedeployment_stats
resource_typefile
resource_typegroup
resource_typegroup_member
resource_typeidpsync_settings
resource_typelicense
resource_typenotification_message
resource_typenotification_preference
resource_typenotification_template
resource_typeoauth2_app
resource_typeoauth2_app_code_token
resource_typeoauth2_app_secret
resource_typeorganization
resource_typeorganization_member
resource_typeprovisioner_daemon
resource_typeprovisioner_keys
resource_typereplicas
resource_typesystem
resource_typetailnet_coordinator
resource_typetemplate
resource_typeuser
resource_typeworkspace
resource_typeworkspace_dormant
resource_typeworkspace_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

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization ID
bodybodycodersdk.CustomRoleRequesttrueInsert 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

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.Role

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» display_namestringfalse
» namestringfalse
» organization_idstring(uuid)false
» organization_permissionsarrayfalseOrganization permissions are specific for the organization in the field 'OrganizationID' above.
»» actioncodersdk.RBACActionfalse
»» negatebooleanfalseNegate makes this a negative permission
»» resource_typecodersdk.RBACResourcefalse
» site_permissionsarrayfalse
» user_permissionsarrayfalse

Enumerated Values

PropertyValue
actionapplication_connect
actionassign
actioncreate
actiondelete
actionread
actionread_personal
actionssh
actionupdate
actionupdate_personal
actionuse
actionview_insights
actionstart
actionstop
resource_type*
resource_typeapi_key
resource_typeassign_org_role
resource_typeassign_role
resource_typeaudit_log
resource_typecrypto_key
resource_typedebug_info
resource_typedeployment_config
resource_typedeployment_stats
resource_typefile
resource_typegroup
resource_typegroup_member
resource_typeidpsync_settings
resource_typelicense
resource_typenotification_message
resource_typenotification_preference
resource_typenotification_template
resource_typeoauth2_app
resource_typeoauth2_app_code_token
resource_typeoauth2_app_secret
resource_typeorganization
resource_typeorganization_member
resource_typeprovisioner_daemon
resource_typeprovisioner_keys
resource_typereplicas
resource_typesystem
resource_typetailnet_coordinator
resource_typetemplate
resource_typeuser
resource_typeworkspace
resource_typeworkspace_dormant
resource_typeworkspace_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

NameInTypeRequiredDescription
organizationpathstring(uuid)trueOrganization ID
roleNamepathstringtrueRole 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

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.Role

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» display_namestringfalse
» namestringfalse
» organization_idstring(uuid)false
» organization_permissionsarrayfalseOrganization permissions are specific for the organization in the field 'OrganizationID' above.
»» actioncodersdk.RBACActionfalse
»» negatebooleanfalseNegate makes this a negative permission
»» resource_typecodersdk.RBACResourcefalse
» site_permissionsarrayfalse
» user_permissionsarrayfalse

Enumerated Values

PropertyValue
actionapplication_connect
actionassign
actioncreate
actiondelete
actionread
actionread_personal
actionssh
actionupdate
actionupdate_personal
actionuse
actionview_insights
actionstart
actionstop
resource_type*
resource_typeapi_key
resource_typeassign_org_role
resource_typeassign_role
resource_typeaudit_log
resource_typecrypto_key
resource_typedebug_info
resource_typedeployment_config
resource_typedeployment_stats
resource_typefile
resource_typegroup
resource_typegroup_member
resource_typeidpsync_settings
resource_typelicense
resource_typenotification_message
resource_typenotification_preference
resource_typenotification_template
resource_typeoauth2_app
resource_typeoauth2_app_code_token
resource_typeoauth2_app_secret
resource_typeorganization
resource_typeorganization_member
resource_typeprovisioner_daemon
resource_typeprovisioner_keys
resource_typereplicas
resource_typesystem
resource_typetailnet_coordinator
resource_typetemplate
resource_typeuser
resource_typeworkspace
resource_typeworkspace_dormant
resource_typeworkspace_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

NameInTypeRequiredDescription
organizationpathstringtrueOrganization ID
userpathstringtrueUser 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

StatusMeaningDescriptionSchema
200OKOKcodersdk.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

NameInTypeRequiredDescription
organizationpathstringtrueOrganization ID
userpathstringtrueUser ID, name, or me

Responses

StatusMeaningDescriptionSchema
204No ContentNo 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

NameInTypeRequiredDescription
organizationpathstringtrueOrganization ID
userpathstringtrueUser ID, name, or me
bodybodycodersdk.UpdateRolestrueUpdate 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

StatusMeaningDescriptionSchema
200OKOKcodersdk.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

StatusMeaningDescriptionSchema
200OKOKarray of codersdk.AssignableRoles

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
[array item]arrayfalse
» assignablebooleanfalse
» built_inbooleanfalseBuilt in roles are immutable
» display_namestringfalse
» namestringfalse
» organization_idstring(uuid)false
» organization_permissionsarrayfalseOrganization permissions are specific for the organization in the field 'OrganizationID' above.
»» actioncodersdk.RBACActionfalse
»» negatebooleanfalseNegate makes this a negative permission
»» resource_typecodersdk.RBACResourcefalse
» site_permissionsarrayfalse
» user_permissionsarrayfalse

Enumerated Values

PropertyValue
actionapplication_connect
actionassign
actioncreate
actiondelete
actionread
actionread_personal
actionssh
actionupdate
actionupdate_personal
actionuse
actionview_insights
actionstart
actionstop
resource_type*
resource_typeapi_key
resource_typeassign_org_role
resource_typeassign_role
resource_typeaudit_log
resource_typecrypto_key
resource_typedebug_info
resource_typedeployment_config
resource_typedeployment_stats
resource_typefile
resource_typegroup
resource_typegroup_member
resource_typeidpsync_settings
resource_typelicense
resource_typenotification_message
resource_typenotification_preference
resource_typenotification_template
resource_typeoauth2_app
resource_typeoauth2_app_code_token
resource_typeoauth2_app_secret
resource_typeorganization
resource_typeorganization_member
resource_typeprovisioner_daemon
resource_typeprovisioner_keys
resource_typereplicas
resource_typesystem
resource_typetailnet_coordinator
resource_typetemplate
resource_typeuser
resource_typeworkspace
resource_typeworkspace_dormant
resource_typeworkspace_proxy

To perform this operation, you must be authenticated. Learn more.

See an opportunity to improve our docs? Make an edit.