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

# Create a signature transaction

> Create a new signature transaction to initiate and carry out the signing process.



## OpenAPI

````yaml /api-reference/signatures/openapi.yaml post /v2/transactions
openapi: 3.0.0
info:
  title: Signatures API
  description: >-
    The Signatures API lets you create and manage signature requests and
    signature transactions, and drive documents through the signing and
    notarization process. All endpoints are authenticated with a bearer JWT.
  version: 2.0.0
  contact:
    name: Slate API Support
    email: api-support@slate.inc
    url: https://slate.inc
servers:
  - url: https://api.slate.inc/signatures
    description: Production
  - url: https://api.uat.slate.inc/signatures
    description: UAT (staging)
security:
  - bearerAuth: []
paths:
  /v2/transactions:
    post:
      summary: Create a signature transaction
      description: >-
        Create a new signature transaction to initiate and carry out the signing
        process.
      operationId: postV2SignaturesTransactions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSignatureTransaction'
              type: object
      responses:
        '201':
          description: Signature transaction created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SignatureTransaction'
        '400':
          description: Invalid request parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateSignatureTransactionError'
        '401':
          description: Unauthorized or invalid permissions.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Unexpected internal error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    CreateSignatureTransaction:
      type: object
      required:
        - owner
        - signerId
        - signatureRequests
      properties:
        owner:
          type: string
          description: The ID of the owner.
        signerId:
          type: string
          description: The ID of the requested signer.
        notaryId:
          type: string
          description: The ID of the requested notary.
        timezoneId:
          type: string
          description: IANA time zone that should be set for the signature transaction.
        signatureRequests:
          type: array
          description: The signature request IDs to include in the signature transaction.
          minLength: 1
          maxLength: 100
          items:
            type: string
            format: uuid
            description: >-
              The ID of a signature request to include in the signature
              transaction.
    SignatureTransaction:
      type: object
      required:
        - id
        - status
        - owner
        - signerId
        - externalSignerId
        - signatureRequests
        - createdOn
        - signatureProvider
      properties:
        id:
          type: string
          format: uuid
          description: The ID of the signature transaction.
        owner:
          type: string
          description: The ID of the owner.
        signerId:
          type: string
          description: The ID of the requested signer.
        externalSignerId:
          type: string
          description: The ID of the requested signer with the signing provider.
        notaryId:
          type: string
          description: The ID of the requested notary.
        externalNotaryId:
          type: string
          description: The ID of the requested notary with the signing provider.
        signatureRequests:
          type: array
          description: The signature request IDs to include in the signature transaction.
          minLength: 1
          maxLength: 100
          items:
            type: string
            format: uuid
            description: >-
              The ID of a signature request to include in the signature
              transaction.
        status:
          $ref: '#/components/schemas/SignatureTransactionStatus'
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the signature transaction was created.
        completedOn:
          type: string
          format: date-time
          description: Timestamp when the signature transaction was completed.
        failedOn:
          type: string
          format: date-time
          description: Timestamp when the signature transaction failed or was rejected.
        notaryReadyOn:
          type: string
          format: date-time
          description: Timestamp when the notary joined the signature transaction.
        signingStartedOn:
          type: string
          format: date-time
          description: Timestamp when the earliest signing was started.
        signingCompletedOn:
          type: string
          format: date-time
          description: >-
            Timestamp when the latest signing was completed (or null if any
            request has not been completed).
        notaryStartedOn:
          type: string
          format: date-time
          description: Timestamp when the earliest notarization was started.
        notaryCompletedOn:
          type: string
          format: date-time
          description: >-
            Timestamp when the latest notarization was completed (or null if any
            request has not been completed).
        otpRequired:
          type: boolean
          description: >-
            Whether an OTP token must be supplied to fetch the signing URL (true
            when the creditor's OTP method is email; SMS is handled natively in
            the signing ceremony).
        otpMethod:
          type: string
          description: The creditor's configured OTP method (e.g. `email` or `sms`).
        signatureProvider:
          type: string
          description: The signing provider that should be used for this transaction.
    CreateSignatureTransactionError:
      type: object
      required:
        - message
        - files
        - reason
      properties:
        message:
          type: string
          description: A human-readable error message.
        files:
          type: array
          description: A list of files that have issues.
          items:
            $ref: '#/components/schemas/CreateSignatureTransactionErrorFile'
        reason:
          $ref: '#/components/schemas/CreateSignatureTransactionErrorReason'
    Error:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          description: A human-readable error message.
    SignatureTransactionStatus:
      type: string
      description: >-
        The status of the signature transaction. It starts in `pending` and
        transitions to `completed` or `failed`.
      enum:
        - pending
        - completed
        - failed
      x-enum-varnames:
        - SignatureTransactionStatusPending
        - SignatureTransactionStatusCompleted
        - SignatureTransactionStatusFailed
    CreateSignatureTransactionErrorFile:
      type: object
      required:
        - matterReference
        - filename
        - size
        - maxSize
      properties:
        matterReference:
          type: string
          description: The matter reference for the file that has issues.
        filename:
          type: string
          description: The filename or internal reference identifier for the template.
        size:
          type: integer
          format: int64
          description: The size of the file in bytes.
        maxSize:
          type: integer
          format: int64
          description: The maximum allowed size in bytes.
    CreateSignatureTransactionErrorReason:
      type: string
      description: >-
        The reason a signature transaction could not be created. -
        EXCEEDS_MAX_FILE_SIZE: a file exceeds the maximum allowed file size. -
        EXCEEDS_MAX_PACKAGE_SIZE: the combined files exceed the maximum allowed
        package size. - INVALID_CHILDREN: one or more referenced signature
        requests are invalid. - NOTARY_REQUIRED: a notary is required but was
        not provided. - INVALID_MEDIA: a file has an unsupported media type. -
        INVALID_NOTARY: the specified notary is invalid. -
        INVALID_SIGNIX_NOTARY: the specified notary is not valid for the
        selected signing provider. - INVALID_AFFIANT: the specified affiant is
        invalid. - INVALID_CONFIGURATION: the transaction configuration is
        invalid.
      enum:
        - EXCEEDS_MAX_FILE_SIZE
        - EXCEEDS_MAX_PACKAGE_SIZE
        - INVALID_CHILDREN
        - NOTARY_REQUIRED
        - INVALID_MEDIA
        - INVALID_NOTARY
        - INVALID_SIGNIX_NOTARY
        - INVALID_AFFIANT
        - INVALID_CONFIGURATION
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Cognito-issued JWT access token. Send it as `Authorization: Bearer
        <token>`.

````