> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gnosispay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Accept terms for a profile

> Records a profile's acceptance of the current terms.

First call `GET /kyc/terms-of-service`, present the terms to the user, and
submit every accepted `type` and `version`. The request is rejected if a
version is no longer current.



## OpenAPI

````yaml https://core.sandbox.gnosispay.in/partner-api/openapi.json post /v1/kyc/profiles/{kyc_profile_id}/terms
openapi: 3.1.0
info:
  title: Gnosis Pay Partner API
  version: 1.0.0
  description: >-
    Server-to-server API for onboarding users, creating accounts and cards,
    moving

    funds, and managing the card lifecycle. Call this API only from a trusted

    backend. Every request requires a partner access token, and every resource
    is

    scoped to the authenticated partner.
servers:
  - url: https://core.prod.gnosispay.com/partner-api
    description: Production
    variables: {}
  - url: https://core.sandbox.gnosispay.in/core
    description: Sandbox
    variables: {}
security:
  - BearerAuth: []
tags:
  - name: Accounts
  - name: Cards
  - name: Card transactions
  - name: KYC
  - name: Deposits
  - name: Withdrawals
  - name: PCI
  - name: 3DS
  - name: Webhooks
paths:
  /v1/kyc/profiles/{kyc_profile_id}/terms:
    post:
      tags:
        - KYC
      summary: Accept terms for a profile
      description: >-
        Records a profile's acceptance of the current terms.


        First call `GET /kyc/terms-of-service`, present the terms to the user,
        and

        submit every accepted `type` and `version`. The request is rejected if a

        version is no longer current.
      operationId: kyc_profiles.accept_terms.v1
      parameters:
        - name: kyc_profile_id
          in: path
          required: true
          description: The KYC profile ID.
          schema:
            $ref: '#/components/schemas/uuid'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AcceptTermsRequest'
        description: Terms and versions accepted by the user.
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AcceptTermsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    uuid:
      type: string
      format: uuid
    AcceptTermsRequest:
      type: object
      required:
        - terms
      properties:
        terms:
          type: array
          items:
            $ref: '#/components/schemas/AcceptTermsItem'
          minItems: 1
          description: Terms and versions accepted by the user.
    AcceptTermsResponse:
      type: object
      required:
        - ok
      properties:
        ok:
          type: boolean
          description: True when every submitted acceptance was recorded.
        errors:
          type: array
          items:
            $ref: '#/components/schemas/AcceptTermsError'
          description: Validation errors, when one or more terms could not be accepted.
    Error:
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: integer
          format: int32
          description: HTTP status code.
        message:
          type: string
          description: Generic human-readable text for the status code. Do not parse it.
        reason:
          type: string
          description: >-
            Stable machine-readable code identifying the specific cause, present
            only

            for errors that expose one (e.g. `CREATE_CARD_LIMIT_EXCEEDED`).
            Branch on

            this rather than on `message`.
    AcceptTermsItem:
      type: object
      required:
        - type
        - version
      properties:
        type:
          type: string
          description: Terms type returned by `GET /kyc/terms-of-service`.
        version:
          type: string
          description: Current terms version accepted by the user.
    AcceptTermsError:
      type: object
      required:
        - type
        - error
      properties:
        type:
          type: string
          description: Terms type that could not be accepted.
        error:
          type: string
          description: Machine-readable validation error.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: Bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.