# Terms of Service not accepted

<!-- GENERATED by gateway/scripts/generate-error-docs.mjs — DO NOT EDIT. This page renders gateway/contracts/errors.json; edit the catalogue and regenerate. -->

| | |
| --- | --- |
| HTTP status | `403` |
| Type | `https://docs.investorliftdata.com/errors/terms-not-accepted` |
| Retryable | No |
| Retry-After header | No |

## What the body says

The response body says:

> The current Terms of Service for this Account have not been accepted, so this Metered Call was not started and no Credits were consumed. Review and accept the current Terms of Service in the Portal, then send the request again.

## What happened to the Credits

No Credits are consumed by a call that ends here.

## Retrying

**Not retryable as sent, but the fix is not in the request.** The condition the detail names sits on the Account, not in the payload, and the body carries the Portal link that clears it. Clear it, then send the identical request again: it succeeds unchanged.

## Body members

Beyond the base members (`type`, `title`, `detail`, `status`, `trace_id`), the body
carries:

| Member | Meaning |
| --- | --- |
| `terms_url` | The Portal page where the current Terms of Service can be reviewed and accepted for this Account. |

## Retry-After

No. This response carries no `Retry-After` header.

Every error response is an RFC 9457 Problem Detail sent as `application/problem+json`,
and every response carries a `trace-id` header, repeated in the body as `trace_id`.
The Trace ID is the only handle support needs to find your call.

Contact support at `john@investorliftdata.com` and quote the Trace ID.
