# Get the legal acceptance

> The legal.acceptance_get operation: GET /api/v1/legal_acceptance in the REST API and the legal_acceptance_get tool in the MCP server.

Returns which versions of Ownrecord's Terms of Service and Data Processing Agreement the organization
accepted, the versions in effect now, and any announced change.

Each document's `status` is `accepted`; `update_announced` when a material change is announced and not
accepted yet (it takes effect on `upcoming.effectiveDate`, at least 30 days after the announcement);
`acceptance_required` when a material change is in effect and an owner or admin must accept it; or, for the
DPA, `not_accepted` until it is accepted, which the go-live checklist requires. `actionRequired` is true when
any document needs acceptance now.

Readable by every member of the organization.

## At a glance

- **REST:** `GET /api/v1/legal_acceptance`
- **MCP tool:** `legal_acceptance_get`
- **Operation ID:** `legal.acceptance_get`
- **Scope:** Organization
- **Permission:** `org:read`
- **Risk tier:** `read`
- **Dry run:** Not supported
- **Idempotency:** Not needed (read only)
- **Modes:** Test and live
- **Authentication:** API key with the `org:read` scope
- **Since:** M12

## Request

### Query parameters

This operation takes no query parameters.

## Response

`200 OK` with a JSON object:

| Field                               | Type                                                                                           | Description |
| ----------------------------------- | ---------------------------------------------------------------------------------------------- | ----------- |
| `object`                            | `"legal_acceptance"`                                                                           |             |
| `organizationId`                    | `org_…` ID                                                                                     |             |
| `actionRequired`                    | boolean                                                                                        |             |
| `updateAnnounced`                   | boolean                                                                                        |             |
| `documents`                         | array of object                                                                                |             |
| `documents[].document`              | one of `terms`, `dpa`                                                                          |             |
| `documents[].title`                 | string                                                                                         |             |
| `documents[].status`                | one of `accepted`, `update_announced`, `acceptance_required`, `not_accepted`, `not_applicable` |             |
| `documents[].acceptedVersion`       | string or null                                                                                 |             |
| `documents[].acceptedAt`            | date-time or null                                                                              |             |
| `documents[].current`               | object                                                                                         |             |
| `documents[].current.version`       | string                                                                                         |             |
| `documents[].current.effectiveDate` | string                                                                                         |             |
| `documents[].current.status`        | one of `draft`, `approved`                                                                     |             |
| `documents[].current.url`           | string                                                                                         |             |
| `documents[].current.versionUrl`    | string                                                                                         |             |
| `documents[].upcoming`              | object or null                                                                                 |             |
| `documents[].acceptableVersions`    | array of string                                                                                |             |

## Examples

### Terms accepted, DPA not yet

```http
GET /api/v1/legal_acceptance
Authorization: Bearer or_test_…
```

Response (`200`):

```json
{
  "object": "legal_acceptance",
  "organizationId": "org_01m4tx5nj7ekd958x53w4bntcg",
  "actionRequired": false,
  "updateAnnounced": false,
  "documents": [
    {
      "document": "terms",
      "title": "Terms of Service",
      "status": "accepted",
      "acceptedVersion": "1.0",
      "acceptedAt": "2026-10-26T09:30:00.000Z",
      "current": {
        "version": "1.0",
        "effectiveDate": "2026-10-26",
        "status": "draft",
        "url": "/legal/terms",
        "versionUrl": "/legal/terms/1.0"
      },
      "upcoming": null,
      "acceptableVersions": ["1.0"]
    },
    {
      "document": "dpa",
      "title": "Data Processing Agreement",
      "status": "not_accepted",
      "acceptedVersion": null,
      "acceptedAt": null,
      "current": {
        "version": "1.0",
        "effectiveDate": "2026-10-26",
        "status": "draft",
        "url": "/legal/dpa",
        "versionUrl": "/legal/dpa/1.0"
      },
      "upcoming": null,
      "acceptableVersions": ["1.0"]
    }
  ]
}
```

## Errors

| Code                                                                                   | HTTP status | When                              | What to do                                                                      |
| -------------------------------------------------------------------------------------- | ----------- | --------------------------------- | ------------------------------------------------------------------------------- |
| [`permission_denied`](https://ownrecord.io/docs/reference/errors.md#permission_denied) | 403         | You can't read this organization. | Ask an organization owner or admin for a role or scope that allows this action. |

It can also return these [common errors](https://ownrecord.io/docs/reference.md#common-errors): [`validation_failed`](https://ownrecord.io/docs/reference/errors.md#validation_failed), [`api_version_unsupported`](https://ownrecord.io/docs/reference/errors.md#api_version_unsupported), [`authentication_required`](https://ownrecord.io/docs/reference/errors.md#authentication_required), [`api_key_invalid`](https://ownrecord.io/docs/reference/errors.md#api_key_invalid), [`resource_not_found`](https://ownrecord.io/docs/reference/errors.md#resource_not_found), [`dry_run_not_supported`](https://ownrecord.io/docs/reference/errors.md#dry_run_not_supported), [`rate_limited`](https://ownrecord.io/docs/reference/errors.md#rate_limited), [`internal_error`](https://ownrecord.io/docs/reference/errors.md#internal_error).
