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

# Record the signer's consent to electronic signature

> Appends `participant.consented` with the request's IP and user agent as audit facts (spec §7). Idempotent: a participant who already consented gets their original consent timestamp back. Allowed only when it is the signer's turn.



## OpenAPI

````yaml /openapi.json post /api/signer/consent
openapi: 3.0.0
info:
  title: Atlas API
  version: 0.0.0
servers:
  - url: https://api.atlaswork.ai
security: []
paths:
  /api/signer/consent:
    post:
      tags:
        - signer
      summary: Record the signer's consent to electronic signature
      description: >-
        Appends `participant.consented` with the request's IP and user agent as
        audit facts (spec §7). Idempotent: a participant who already consented
        gets their original consent timestamp back. Allowed only when it is the
        signer's turn.
      responses:
        '200':
          description: Consent recorded (or already on record)
          content:
            application/json:
              schema:
                type: object
                properties:
                  consentedAt:
                    type: string
                    format: date-time
                required:
                  - consentedAt
        '401':
          description: Missing, invalid, expired, or reissued signing link
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  details:
                    type: object
                    additionalProperties:
                      nullable: true
                required:
                  - code
                  - message
        '404':
          description: The link's envelope or participant no longer exists
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  details:
                    type: object
                    additionalProperties:
                      nullable: true
                required:
                  - code
                  - message
        '409':
          description: Not the signer's turn, or the envelope is no longer active
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  details:
                    type: object
                    additionalProperties:
                      nullable: true
                required:
                  - code
                  - message
      security:
        - signerToken: []
components:
  securitySchemes:
    signerToken:
      type: http
      scheme: bearer
      description: HMAC-signed envelope token, as a bearer token or a `token` query param.

````