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

# Accept Agreement

`POST /accounts/{account}/accept_agreement`

## Request

- Base URL: `https://sandbox.api.lemon.markets/v1`
- URL: `https://sandbox.api.lemon.markets/v1/accounts/{account}/accept_agreement`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/lemon/apis/lemon-markets-brokerage-api/docs/accounts/:account/accept_agreement/post.ts> (a function with typed inputs; its response is checked against the schema)

## 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.dev/lemon/apis/lemon-markets-brokerage-api.md) - [All operations](https://skmtc.dev/lemon/apis/lemon-markets-brokerage-api/llms.txt) - [OpenAPI document](https://skmtc.dev/lemon/apis/lemon-markets-brokerage-api/revisions/1f1df208c0e4?raw)
