# Accept terms

> The account accepts manitu's current terms (AGB) - with a session only.

- Effect: Write - Changes the account. Agents ask first.
- Idempotent: yes
- Stability: beta
- REST: `POST https://api.manitu.de/v1/account/gtac/accept`
- Needs: `account`
- Page: /reference/account/gtac/accept/

**Changes the account. Agents say what will happen and wait for an explicit yes before calling it.**

## REST

`POST https://api.manitu.de/v1/account/gtac/accept`

### Authentication

One of `X-API-Key`, `Authorization: Bearer …` - never more than one in a request.

### Request body

JSON; unknown fields are refused.

No fields - send {} or no body.

### Response

In `data`; the rest of the body as on every call.

- `account_id` (integer, required) - The customer account - its id is also its customer number.
- `accept_required` (boolean, required) - Whether the account still has to accept the current terms.
- `accepted_at` (string | null, required) - When the terms were last accepted; null: never. (format `date-time`)
- `title` (string, required) - What the terms are called.
- `url` (string, required) - Where the current terms can be read. (format `uri`)

### Statuses

- `200` Success.
- `400` The request does not match the declared input schema.
- `401` No credential was presented, or it was not recognised.
- `403` The credential is not permitted to use this operation.
- `500` The server failed. Nothing about the request was wrong. Whether a change took effect is not known - check before trying it again.
- `503` The channel this operation forwards through is unavailable.

### Example

```sh
curl -X POST 'https://api.manitu.de/v1/account/gtac/accept' \
  -H 'X-API-Key: $API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{}'
```

## Example result

```json
{
  "account_id": 12345,
  "accept_required": true,
  "accepted_at": "2026-10-23T12:00:00+02:00",
  "title": "string",
  "url": "https://www.example.com/"
}
```
