# Access review: every member, their MFA, last sign-in, projects and tokens (owner / admin; JSON or CSV)

GET`/v1/organizations/{org_id}/access-review`[Token scope: `org:read`](https://docs.taskadence.com/guides/authentication/#scopes)

Request

**curl**


```bash
curl -X GET "https://api.taskadence.com/v1/organizations/<org_id>/access-review" \
  -H "Authorization: Bearer $TASKADENCE_TOKEN"
```

**Python**


```python
from taskadence import Taskadence

tm = Taskadence()  # reads TASKADENCE_TOKEN
result = tm.organizations.access_review("<org_id>")
print(result)
```

Response 200

```json
{
  "org_id": "string",
  "generated_at": "string",
  "mfa_policy": "off",
  "members": [
    {
      "user_id": "string",
      "username": "string",
      "email": "string",
      "kind": "string",
      "role": "string",
      "designation": "string",
      "last_active_at": "string",
      "tokens": [
        {
          "token_id": "string",
          "name": "string",
          "token_prefix": "string",
          "kind": "string",
          "grant_type": "string",
          "scopes": [
            "string"
          ],
          "project_ids": [
            "string"
          ],
          "expires_at": "string",
          "last_used_at": "string"
        }
      ],
      "mfa": "unknown",
      "mfa_required": false,
      "last_sign_in_at": "string",
      "projects": [
        {
          "project_id": "string",
          "name": "string",
          "role": "string"
        }
      ]
    }
  ],
  "unattached_tokens": [
    {
      "token_id": "string",
      "name": "string",
      "token_prefix": "string",
      "kind": "string",
      "grant_type": "string",
      "scopes": [
        "string"
      ],
      "project_ids": [
        "string"
      ],
      "expires_at": "string",
      "last_used_at": "string",
      "principal_user_id": "string"
    }
  ],
  "summary": {
    "members": 0,
    "people": 0,
    "service_accounts": 0,
    "owners_admins": 0,
    "guests": 0,
    "active_tokens": 0,
    "unattached_tokens": 0,
    "mfa_enrolled": 0,
    "mfa_not_enrolled": 0,
    "mfa_unknown": 0,
    "mfa_required_missing": 0,
    "csv_rows": 0
  },
  "meta": {
    "auth_error": 0
  }
}
```

Who can reach this organization, and with which tokens. Owner / admin. `Accept: text/csv` for a spreadsheet.

## Authorizations

-   **[bearerAuth](https://docs.taskadence.com/reference/#bearerauth)**
-   **[TaskadenceToken](https://docs.taskadence.com/reference/#taskadencetoken)**

## Parameters

### Path Parameters

**org\_id**

required

_Org Id_

string

### Header Parameters

**If-None-Match**

string

An `ETag` you hold; unchanged → 304 with no body.

## Responses

### 200

Successful Response

_AccessReview_

Returned by `organizations.access_review`.

object

**org\_id**

required

_Org Id_

string

**generated\_at**

required

_Generated At_

string

**mfa\_policy**

_Mfa Policy_

The org’s two-step sign-in policy: `off`, `admins` or `all`

string

default: off

**members**

required

_Members_

Array<object>

_ReviewMember_

Part of `AccessReview`.

object

**user\_id**

required

_User Id_

string

**username**

Any of:

**string**


string

**null**


null

**email**

Any of:

**string**


string

**null**


null

**kind**

required

_Kind_

`user` or `service_account`

string

**role**

required

_Role_

string

**designation**

Any of:

**string**


string

**null**


null

**last\_active\_at**

Any of:

**string**


string

**null**


null

**tokens**

_Tokens_

Tokens that authenticate right now

Array<object>

_ReviewToken_

Part of `ReviewMember`.

object

**token\_id**

required

_Token Id_

string

**name**

required

_Name_

string

**token\_prefix**

required

_Token Prefix_

string

**kind**

required

_Kind_

string

**grant\_type**

required

_Grant Type_

string

**scopes**

required

_Scopes_

Array<string>

**project\_ids**

Any of:

**Array<string>**


Array<string>

**null**


null

**expires\_at**

Any of:

**string**


string

**null**


null

**last\_used\_at**

Any of:

**string**


string

**null**


null

**mfa**

_Mfa_

`enrolled`, `not_enrolled`, `unknown` (the auth service could not say) or `n/a` (a service account)

string

default: unknown

**mfa\_required**

_Mfa Required_

The organization’s two-step sign-in policy covers this member’s role

boolean

**last\_sign\_in\_at**

Any of:

**string**


string

**null**


null

**projects**

_Projects_

Projects of this organization the member belongs to, with their role

Array<object>

_ReviewProject_

Part of `ReviewMember`.

object

**project\_id**

required

_Project Id_

string

**name**

Any of:

**string**


string

**null**


null

**role**

required

_Role_

`owner`, `editor` or `viewer`

string

**unattached\_tokens**

_Unattached Tokens_

Active tokens whose principal is no longer an active member

Array<object>

_UnattachedToken_

Part of `AccessReview`.

object

**token\_id**

required

_Token Id_

string

**name**

required

_Name_

string

**token\_prefix**

required

_Token Prefix_

string

**kind**

required

_Kind_

string

**grant\_type**

required

_Grant Type_

string

**scopes**

required

_Scopes_

Array<string>

**project\_ids**

Any of:

**Array<string>**


Array<string>

**null**


null

**expires\_at**

Any of:

**string**


string

**null**


null

**last\_used\_at**

Any of:

**string**


string

**null**


null

**principal\_user\_id**

required

_Principal User Id_

string

**summary**

required

_ReviewSummary_

Part of `AccessReview`.

object

**members**

required

_Members_

Active members, people and service accounts

integer

**people**

required

_People_

integer

**service\_accounts**

required

_Service Accounts_

integer

**owners\_admins**

required

_Owners Admins_

integer

**guests**

required

_Guests_

integer

**active\_tokens**

required

_Active Tokens_

integer

**unattached\_tokens**

required

_Unattached Tokens_

integer

**mfa\_enrolled**

required

_Mfa Enrolled_

integer

**mfa\_not\_enrolled**

required

_Mfa Not Enrolled_

integer

**mfa\_unknown**

required

_Mfa Unknown_

integer

**mfa\_required\_missing**

required

_Mfa Required Missing_

People the policy requires MFA of who have not set it up (or are unknown)

integer

**csv\_rows**

required

_Csv Rows_

Data rows of the CSV form (one per member and token)

integer

**meta**

_ReviewMeta_

Part of `AccessReview`.

object

**auth\_error**

_Auth Error_

People the auth service could not be asked about; their `mfa` is `unknown`

integer

0

Example

```json
{
  "org_id": "string",
  "generated_at": "string",
  "mfa_policy": "off",
  "members": [
    {
      "user_id": "string",
      "username": "string",
      "email": "string",
      "kind": "string",
      "role": "string",
      "designation": "string",
      "last_active_at": "string",
      "tokens": [
        {
          "token_id": "string",
          "name": "string",
          "token_prefix": "string",
          "kind": "string",
          "grant_type": "string",
          "scopes": [
            "string"
          ],
          "project_ids": [
            "string"
          ],
          "expires_at": "string",
          "last_used_at": "string"
        }
      ],
      "mfa": "unknown",
      "mfa_required": false,
      "last_sign_in_at": "string",
      "projects": [
        {
          "project_id": "string",
          "name": "string",
          "role": "string"
        }
      ]
    }
  ],
  "unattached_tokens": [
    {
      "token_id": "string",
      "name": "string",
      "token_prefix": "string",
      "kind": "string",
      "grant_type": "string",
      "scopes": [
        "string"
      ],
      "project_ids": [
        "string"
      ],
      "expires_at": "string",
      "last_used_at": "string",
      "principal_user_id": "string"
    }
  ],
  "summary": {
    "members": 0,
    "people": 0,
    "service_accounts": 0,
    "owners_admins": 0,
    "guests": 0,
    "active_tokens": 0,
    "unattached_tokens": 0,
    "mfa_enrolled": 0,
    "mfa_not_enrolled": 0,
    "mfa_unknown": 0,
    "mfa_required_missing": 0,
    "csv_rows": 0
  },
  "meta": {
    "auth_error": 0
  }
}
```

string

Example

```plaintext
user_id,username,email,kind,role,designation,last_active_at,token_id,token_name,token_prefix,token_kind,grant_type,scopes,project_ids,expires_at,last_used_at,mfa,mfa_required,last_sign_in_at,projects
```

### 304

Not Modified - `If-None-Match` matched the current `ETag` (no body)

### 400

Bad request - a query parameter outside what the operation accepts (`invalid-parameter`)

application/problem+json

_Problem_

An RFC 9457 problem details object - the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:taskadence:problem:*` identifier

string

Allowed values: about:blank urn:taskadence:problem:validation urn:taskadence:problem:invalid-parameter urn:taskadence:problem:precondition-failed urn:taskadence:problem:idempotency-key-reused urn:taskadence:problem:idempotency-key-in-flight urn:taskadence:problem:idempotency-key-invalid urn:taskadence:problem:rate-limit urn:taskadence:problem:internal urn:taskadence:problem:token-invalid urn:taskadence:problem:token-expired urn:taskadence:problem:token-revoked urn:taskadence:problem:insufficient-scope urn:taskadence:problem:test-token-read-only urn:taskadence:problem:token-policy urn:taskadence:problem:url-refused urn:taskadence:problem:mfa-required urn:taskadence:problem:email-unverified urn:taskadence:problem:upload-too-large urn:taskadence:problem:upload-type-not-allowed urn:taskadence:problem:upload-type-mismatch urn:taskadence:problem:upload-rejected

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

**mfa**

On an `mfa-required` problem only: `enrolled` (does the person have an authenticator app set up), `required_for` (`all` or `admins`) and `reason` (`org_policy`: the organization’s requirement; `step_up`: this action needs a second step)

object

**enrolled**

boolean

**required\_for**

string

Allowed values: all admins

**reason**

string

Allowed values: org\_policy step\_up

Example

```json
{
  "type": "about:blank",
  "title": "Bad request",
  "status": 400,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 401

Missing or invalid bearer token

application/problem+json

_Problem_

An RFC 9457 problem details object - the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:taskadence:problem:*` identifier

string

Allowed values: about:blank urn:taskadence:problem:validation urn:taskadence:problem:invalid-parameter urn:taskadence:problem:precondition-failed urn:taskadence:problem:idempotency-key-reused urn:taskadence:problem:idempotency-key-in-flight urn:taskadence:problem:idempotency-key-invalid urn:taskadence:problem:rate-limit urn:taskadence:problem:internal urn:taskadence:problem:token-invalid urn:taskadence:problem:token-expired urn:taskadence:problem:token-revoked urn:taskadence:problem:insufficient-scope urn:taskadence:problem:test-token-read-only urn:taskadence:problem:token-policy urn:taskadence:problem:url-refused urn:taskadence:problem:mfa-required urn:taskadence:problem:email-unverified urn:taskadence:problem:upload-too-large urn:taskadence:problem:upload-type-not-allowed urn:taskadence:problem:upload-type-mismatch urn:taskadence:problem:upload-rejected

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

**mfa**

On an `mfa-required` problem only: `enrolled` (does the person have an authenticator app set up), `required_for` (`all` or `admins`) and `reason` (`org_policy`: the organization’s requirement; `step_up`: this action needs a second step)

object

**enrolled**

boolean

**required\_for**

string

Allowed values: all admins

**reason**

string

Allowed values: org\_policy step\_up

Example

```json
{
  "type": "about:blank",
  "title": "Missing or invalid bearer token",
  "status": 401,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 403

Authenticated, but not allowed

application/problem+json

_Problem_

An RFC 9457 problem details object - the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:taskadence:problem:*` identifier

string

Allowed values: about:blank urn:taskadence:problem:validation urn:taskadence:problem:invalid-parameter urn:taskadence:problem:precondition-failed urn:taskadence:problem:idempotency-key-reused urn:taskadence:problem:idempotency-key-in-flight urn:taskadence:problem:idempotency-key-invalid urn:taskadence:problem:rate-limit urn:taskadence:problem:internal urn:taskadence:problem:token-invalid urn:taskadence:problem:token-expired urn:taskadence:problem:token-revoked urn:taskadence:problem:insufficient-scope urn:taskadence:problem:test-token-read-only urn:taskadence:problem:token-policy urn:taskadence:problem:url-refused urn:taskadence:problem:mfa-required urn:taskadence:problem:email-unverified urn:taskadence:problem:upload-too-large urn:taskadence:problem:upload-type-not-allowed urn:taskadence:problem:upload-type-mismatch urn:taskadence:problem:upload-rejected

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

**mfa**

On an `mfa-required` problem only: `enrolled` (does the person have an authenticator app set up), `required_for` (`all` or `admins`) and `reason` (`org_policy`: the organization’s requirement; `step_up`: this action needs a second step)

object

**enrolled**

boolean

**required\_for**

string

Allowed values: all admins

**reason**

string

Allowed values: org\_policy step\_up

Example

```json
{
  "type": "about:blank",
  "title": "Authenticated, but not allowed",
  "status": 403,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 404

Not found

application/problem+json

_Problem_

An RFC 9457 problem details object - the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:taskadence:problem:*` identifier

string

Allowed values: about:blank urn:taskadence:problem:validation urn:taskadence:problem:invalid-parameter urn:taskadence:problem:precondition-failed urn:taskadence:problem:idempotency-key-reused urn:taskadence:problem:idempotency-key-in-flight urn:taskadence:problem:idempotency-key-invalid urn:taskadence:problem:rate-limit urn:taskadence:problem:internal urn:taskadence:problem:token-invalid urn:taskadence:problem:token-expired urn:taskadence:problem:token-revoked urn:taskadence:problem:insufficient-scope urn:taskadence:problem:test-token-read-only urn:taskadence:problem:token-policy urn:taskadence:problem:url-refused urn:taskadence:problem:mfa-required urn:taskadence:problem:email-unverified urn:taskadence:problem:upload-too-large urn:taskadence:problem:upload-type-not-allowed urn:taskadence:problem:upload-type-mismatch urn:taskadence:problem:upload-rejected

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

**mfa**

On an `mfa-required` problem only: `enrolled` (does the person have an authenticator app set up), `required_for` (`all` or `admins`) and `reason` (`org_policy`: the organization’s requirement; `step_up`: this action needs a second step)

object

**enrolled**

boolean

**required\_for**

string

Allowed values: all admins

**reason**

string

Allowed values: org\_policy step\_up

Example

```json
{
  "type": "about:blank",
  "title": "Not found",
  "status": 404,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 409

Conflict (a duplicate, or an `Idempotency-Key` still in flight)

application/problem+json

_Problem_

An RFC 9457 problem details object - the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:taskadence:problem:*` identifier

string

Allowed values: about:blank urn:taskadence:problem:validation urn:taskadence:problem:invalid-parameter urn:taskadence:problem:precondition-failed urn:taskadence:problem:idempotency-key-reused urn:taskadence:problem:idempotency-key-in-flight urn:taskadence:problem:idempotency-key-invalid urn:taskadence:problem:rate-limit urn:taskadence:problem:internal urn:taskadence:problem:token-invalid urn:taskadence:problem:token-expired urn:taskadence:problem:token-revoked urn:taskadence:problem:insufficient-scope urn:taskadence:problem:test-token-read-only urn:taskadence:problem:token-policy urn:taskadence:problem:url-refused urn:taskadence:problem:mfa-required urn:taskadence:problem:email-unverified urn:taskadence:problem:upload-too-large urn:taskadence:problem:upload-type-not-allowed urn:taskadence:problem:upload-type-mismatch urn:taskadence:problem:upload-rejected

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

**mfa**

On an `mfa-required` problem only: `enrolled` (does the person have an authenticator app set up), `required_for` (`all` or `admins`) and `reason` (`org_policy`: the organization’s requirement; `step_up`: this action needs a second step)

object

**enrolled**

boolean

**required\_for**

string

Allowed values: all admins

**reason**

string

Allowed values: org\_policy step\_up

Example

```json
{
  "type": "about:blank",
  "title": "Conflict (a duplicate, or an `Idempotency-Key` still in flight)",
  "status": 409,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 412

`If-Match` does not match the current `ETag`

application/problem+json

_Problem_

An RFC 9457 problem details object - the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:taskadence:problem:*` identifier

string

Allowed values: about:blank urn:taskadence:problem:validation urn:taskadence:problem:invalid-parameter urn:taskadence:problem:precondition-failed urn:taskadence:problem:idempotency-key-reused urn:taskadence:problem:idempotency-key-in-flight urn:taskadence:problem:idempotency-key-invalid urn:taskadence:problem:rate-limit urn:taskadence:problem:internal urn:taskadence:problem:token-invalid urn:taskadence:problem:token-expired urn:taskadence:problem:token-revoked urn:taskadence:problem:insufficient-scope urn:taskadence:problem:test-token-read-only urn:taskadence:problem:token-policy urn:taskadence:problem:url-refused urn:taskadence:problem:mfa-required urn:taskadence:problem:email-unverified urn:taskadence:problem:upload-too-large urn:taskadence:problem:upload-type-not-allowed urn:taskadence:problem:upload-type-mismatch urn:taskadence:problem:upload-rejected

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

**mfa**

On an `mfa-required` problem only: `enrolled` (does the person have an authenticator app set up), `required_for` (`all` or `admins`) and `reason` (`org_policy`: the organization’s requirement; `step_up`: this action needs a second step)

object

**enrolled**

boolean

**required\_for**

string

Allowed values: all admins

**reason**

string

Allowed values: org\_policy step\_up

Example

```json
{
  "type": "about:blank",
  "title": "`If-Match` does not match the current `ETag`",
  "status": 412,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 422

The body or query did not validate (`validation`), or an `Idempotency-Key` was reused

application/problem+json

_Problem_

An RFC 9457 problem details object - the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:taskadence:problem:*` identifier

string

Allowed values: about:blank urn:taskadence:problem:validation urn:taskadence:problem:invalid-parameter urn:taskadence:problem:precondition-failed urn:taskadence:problem:idempotency-key-reused urn:taskadence:problem:idempotency-key-in-flight urn:taskadence:problem:idempotency-key-invalid urn:taskadence:problem:rate-limit urn:taskadence:problem:internal urn:taskadence:problem:token-invalid urn:taskadence:problem:token-expired urn:taskadence:problem:token-revoked urn:taskadence:problem:insufficient-scope urn:taskadence:problem:test-token-read-only urn:taskadence:problem:token-policy urn:taskadence:problem:url-refused urn:taskadence:problem:mfa-required urn:taskadence:problem:email-unverified urn:taskadence:problem:upload-too-large urn:taskadence:problem:upload-type-not-allowed urn:taskadence:problem:upload-type-mismatch urn:taskadence:problem:upload-rejected

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

**mfa**

On an `mfa-required` problem only: `enrolled` (does the person have an authenticator app set up), `required_for` (`all` or `admins`) and `reason` (`org_policy`: the organization’s requirement; `step_up`: this action needs a second step)

object

**enrolled**

boolean

**required\_for**

string

Allowed values: all admins

**reason**

string

Allowed values: org\_policy step\_up

Example

```json
{
  "type": "about:blank",
  "title": "The body or query did not validate (`validation`), or an `Idempotency-Key` was reused",
  "status": 422,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 429

An access token, or a signed-in user, or an address over its limit (`rate-limit`; see `Retry-After`)

application/problem+json

_Problem_

An RFC 9457 problem details object - the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:taskadence:problem:*` identifier

string

Allowed values: about:blank urn:taskadence:problem:validation urn:taskadence:problem:invalid-parameter urn:taskadence:problem:precondition-failed urn:taskadence:problem:idempotency-key-reused urn:taskadence:problem:idempotency-key-in-flight urn:taskadence:problem:idempotency-key-invalid urn:taskadence:problem:rate-limit urn:taskadence:problem:internal urn:taskadence:problem:token-invalid urn:taskadence:problem:token-expired urn:taskadence:problem:token-revoked urn:taskadence:problem:insufficient-scope urn:taskadence:problem:test-token-read-only urn:taskadence:problem:token-policy urn:taskadence:problem:url-refused urn:taskadence:problem:mfa-required urn:taskadence:problem:email-unverified urn:taskadence:problem:upload-too-large urn:taskadence:problem:upload-type-not-allowed urn:taskadence:problem:upload-type-mismatch urn:taskadence:problem:upload-rejected

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

**mfa**

On an `mfa-required` problem only: `enrolled` (does the person have an authenticator app set up), `required_for` (`all` or `admins`) and `reason` (`org_policy`: the organization’s requirement; `step_up`: this action needs a second step)

object

**enrolled**

boolean

**required\_for**

string

Allowed values: all admins

**reason**

string

Allowed values: org\_policy step\_up

Example

```json
{
  "type": "about:blank",
  "title": "An access token, or a signed-in user, or an address over its limit (`rate-limit`; see `Retry-After`)",
  "status": 429,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 500

Unexpected server error - quote `request_id`

application/problem+json

_Problem_

An RFC 9457 problem details object - the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:taskadence:problem:*` identifier

string

Allowed values: about:blank urn:taskadence:problem:validation urn:taskadence:problem:invalid-parameter urn:taskadence:problem:precondition-failed urn:taskadence:problem:idempotency-key-reused urn:taskadence:problem:idempotency-key-in-flight urn:taskadence:problem:idempotency-key-invalid urn:taskadence:problem:rate-limit urn:taskadence:problem:internal urn:taskadence:problem:token-invalid urn:taskadence:problem:token-expired urn:taskadence:problem:token-revoked urn:taskadence:problem:insufficient-scope urn:taskadence:problem:test-token-read-only urn:taskadence:problem:token-policy urn:taskadence:problem:url-refused urn:taskadence:problem:mfa-required urn:taskadence:problem:email-unverified urn:taskadence:problem:upload-too-large urn:taskadence:problem:upload-type-not-allowed urn:taskadence:problem:upload-type-mismatch urn:taskadence:problem:upload-rejected

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

**mfa**

On an `mfa-required` problem only: `enrolled` (does the person have an authenticator app set up), `required_for` (`all` or `admins`) and `reason` (`org_policy`: the organization’s requirement; `step_up`: this action needs a second step)

object

**enrolled**

boolean

**required\_for**

string

Allowed values: all admins

**reason**

string

Allowed values: org\_policy step\_up

Example

```json
{
  "type": "about:blank",
  "title": "Unexpected server error",
  "status": 500,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

---
Source: https://docs.taskadence.com/reference/operations/organizationsaccess_review/
