---
title: "Accept Agreement"
method: POST
path: "/accounts/{account}/accept_agreement"
tags: ["Accounts: General"]
---

# Accept Agreement

`POST /accounts/{account}/accept_agreement`

## Path parameters

- `account` string, required

## Headers

- `LMG-Data-Privacy-Access-Principal` string, required
- `LMG-Data-Privacy-Access-Justification` string, required

## Request body

- AcceptAgreementRequest — A request to record acceptance of an agreement by a person for an account.
  - `person` string, required — A person identifier specifying the individual accepting the agreement.
  - `agreement` string, required — An agreement identifier specifying which agreement is being accepted.
  - `accepted_at` string, date-time, required — The timestamp when the agreement was accepted.

## Response `200`

Successful Response

- AcceptAgreementResponse — The customer account response after accepting an agreement, containing either PersonCustomerResponse or BusinessCustomerResponse.
  - `id` string, required — A value identifiying the individual user's account.
  - `cash_account` BankAccountResponse — An object representing a bank account.
    - `iban` string, required — An IBAN (International Bank Account Number) according to ISO 13616-1:2020.
    - `bic` string, required — A BIC (Business Identifier Code) according to ISO 9362.
    - `name` string — The name of the bank managing the bank account.
  - `customer` union, required — A simplified object containing customer type and identifier.
    - PersonCustomerResponse — A simplified object containing only the person customer type and identifier. This response is returned when the `person_customer` query parameter is set to `true` on the GET /accounts/{account_id} endpoint. **Warning:** The `person_customer` parameter will be **deprecated in a future version** of this API. Once deprecated, all responses will behave as if `person_customer=true`.
      - `type` 'person', required — The customer type discriminator. Always set to "person" for person customers.
      - `id` string, required — The unique identifier for the person customer. **Deprecated:** Use the `person` field instead. This field will be removed in a future version.
      - `person` string, required — The unique identifier for the person customer.
    - BusinessCustomerResponse
      - `type` 'business', required — The string `"business"` is used here to identify a business account being onboarded.
      - `id` string, required — The identifier for the business owning an account. **Deprecated:** Use the `business` field instead. This field will be removed in a future version.
      - `business` string, required — The identifier for the business owning an account.
  - `declaration_of_acting_on_own_account` boolean, required — An boolean value indicating whether the user has explicitly stated that they are acting on their own account and not in someone else's name.
  - `history` StatusChangeCustomerAccountStatus[], required — A history of the status changes for the user's account.
    - `status` 'closed' | 'created' | 'opened' | 'rejected', required — A category representing the status of a user's account. <ul> <li><code>closed</code> <li><code>created</code> <li><code>opened</code> <li><code>rejected</code> </ul> <strong>NOTE:</strong> This list is not final yet, there will be more values added later.
    - `timestamp` string, date-time, required — The timestamp of the event. It represents the point in time at which the account was updated.
  - `reference_account` BankAccountResponse — An object representing a bank account.
    - `iban` string, required — An IBAN (International Bank Account Number) according to ISO 13616-1:2020.
    - `bic` string, required — A BIC (Business Identifier Code) according to ISO 9362.
    - `name` string — The name of the bank managing the bank account.
  - `securities_account` BrokerAppsApiEndpointsAccountsSecuritiesAccountResponse — An object representing the account information for the customer's securities account.
    - `number` string, required — A string representing the account number for the securities account.
  - `status` 'closed' | 'created' | 'opened' | 'rejected', required — A category representing the status of a user's account. <ul> <li><code>closed</code> <li><code>created</code> <li><code>opened</code> <li><code>rejected</code> </ul> <strong>NOTE:</strong> This list is not final yet, there will be more values added later.
  - `metadata` object — Optional metadata for the account as key-value pairs.
  - `agreements` AcceptedAgreementResponse[], required — A list of agreements that have been signed and currently valid for this account.
    - `agreement` string, required — An agreement identifier. This value identifies the agreement that a customer has accepted.
    - `accepted_at` string, date-time, required — A point in time. This value specifies the point in time at which the agreement was accepted.
    - `person` string, required — A person identifier. This value identifies the person who accepted the agreement (either customer or legal representative).

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found
- `422` — Unprocessable Entity
- `5XX` — Server Error

---

[API](https://skmtc.net/lemon/apis/lemon-markets-brokerage-api.md) · [All operations](https://skmtc.net/lemon/apis/lemon-markets-brokerage-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lemon/lemon-markets-brokerage-api/revisions/3c8cfd3a96c9/schema)
