Files
coder/docs/reference/api/authorization.md
Danielle Maywood 4369f2b4b5 feat: implement api for "forgot password?" flow (#14915)
Relates to https://github.com/coder/coder/issues/14232

This implements two endpoints (names subject to change):
- `/api/v2/users/otp/request`
- `/api/v2/users/otp/change-password`
2024-10-04 11:53:25 +01:00

7.0 KiB
Generated

Authorization

Check authorization

Code samples

# Example request using curl
curl -X POST http://coder-server:8080/api/v2/authcheck \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

POST /authcheck

Body parameter

{
	"checks": {
		"property1": {
			"action": "create",
			"object": {
				"any_org": true,
				"organization_id": "string",
				"owner_id": "string",
				"resource_id": "string",
				"resource_type": "*"
			}
		},
		"property2": {
			"action": "create",
			"object": {
				"any_org": true,
				"organization_id": "string",
				"owner_id": "string",
				"resource_id": "string",
				"resource_type": "*"
			}
		}
	}
}

Parameters

Name In Type Required Description
body body codersdk.AuthorizationRequest true Authorization request

Example responses

200 Response

{
	"property1": true,
	"property2": true
}

Responses

Status Meaning Description Schema
200 OK OK codersdk.AuthorizationResponse

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

Log in user

Code samples

# Example request using curl
curl -X POST http://coder-server:8080/api/v2/users/login \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json'

POST /users/login

Body parameter

{
	"email": "user@example.com",
	"password": "string"
}

Parameters

Name In Type Required Description
body body codersdk.LoginWithPasswordRequest true Login request

Example responses

201 Response

{
	"session_token": "string"
}

Responses

Status Meaning Description Schema
201 Created Created codersdk.LoginWithPasswordResponse

Change password with a one-time passcode

Code samples

# Example request using curl
curl -X POST http://coder-server:8080/api/v2/users/otp/change-password \
  -H 'Content-Type: application/json'

POST /users/otp/change-password

Body parameter

{
	"email": "user@example.com",
	"one_time_passcode": "string",
	"password": "string"
}

Parameters

Name In Type Required Description
body body codersdk.ChangePasswordWithOneTimePasscodeRequest true Change password request

Responses

Status Meaning Description Schema
204 No Content No Content

Request one-time passcode

Code samples

# Example request using curl
curl -X POST http://coder-server:8080/api/v2/users/otp/request \
  -H 'Content-Type: application/json'

POST /users/otp/request

Body parameter

{
	"email": "user@example.com"
}

Parameters

Name In Type Required Description
body body codersdk.RequestOneTimePasscodeRequest true One-time passcode request

Responses

Status Meaning Description Schema
204 No Content No Content

Convert user from password to oauth authentication

Code samples

# Example request using curl
curl -X POST http://coder-server:8080/api/v2/users/{user}/convert-login \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Coder-Session-Token: API_KEY'

POST /users/{user}/convert-login

Body parameter

{
	"password": "string",
	"to_type": ""
}

Parameters

Name In Type Required Description
user path string true User ID, name, or me
body body codersdk.ConvertLoginRequest true Convert request

Example responses

201 Response

{
	"expires_at": "2019-08-24T14:15:22Z",
	"state_string": "string",
	"to_type": "",
	"user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}

Responses

Status Meaning Description Schema
201 Created Created codersdk.OAuthConversionResponse

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