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

# List Participant Signing URLs by Envelope ID

> The **List Participant Signing URLs by Envelope ID** endpoint returns the URL and its expiry
for each participant of an envelope, for every role. Signers receive a URL into the signing
experience; CC participants receive a read-only view URL.

This endpoint is for senders who distribute the links themselves, so it requires the envelope
to have `notificationsManagedBy` set to `sender`. When Nitro manages the notifications it has
already emailed every participant their own link, and the request is rejected with a 409
response. Envelopes default to `nitro` when created without the field.

Note that a sender-managed envelope can only be sent for signing when every signer
authenticates by SMS, so in practice this endpoint serves envelopes that meet that
requirement too.

The envelope must also be in the SENT status; otherwise the request is rejected with a 409
response.




## OpenAPI

````yaml https://api.gonitro.dev/openapi.json get /sign/envelopes/{envelopeID}/participants/signing-urls
openapi: 3.1.0
info:
  title: Nitro Sign Public API
  description: REST API for Nitro Sign
  version: '0.1'
servers:
  - url: https://api.gonitro.dev
    description: Europe
  - url: https://api.us.gonitro.dev
    description: North America
  - url: https://api.au.gonitro.dev
    description: Australia
security:
  - bearerAuth: []
paths:
  /sign/envelopes/{envelopeID}/participants/signing-urls:
    get:
      tags:
        - Sign
      summary: List Participant Signing URLs by Envelope ID
      description: >
        The **List Participant Signing URLs by Envelope ID** endpoint returns
        the URL and its expiry

        for each participant of an envelope, for every role. Signers receive a
        URL into the signing

        experience; CC participants receive a read-only view URL.


        This endpoint is for senders who distribute the links themselves, so it
        requires the envelope

        to have `notificationsManagedBy` set to `sender`. When Nitro manages the
        notifications it has

        already emailed every participant their own link, and the request is
        rejected with a 409

        response. Envelopes default to `nitro` when created without the field.


        Note that a sender-managed envelope can only be sent for signing when
        every signer

        authenticates by SMS, so in practice this endpoint serves envelopes that
        meet that

        requirement too.


        The envelope must also be in the SENT status; otherwise the request is
        rejected with a 409

        response.
      operationId: listParticipantSigningUrls
      parameters:
        - name: envelopeID
          in: path
          description: >-
            A unique UUIDv4 string that identifies the envelope in the Nitro
            system.
          required: true
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: List participant signing URLs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParticipantSigningUrlList'
        '401':
          description: Unauthorized - Invalid or missing JWT token
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/UnauthorizedProblemDetail'
        '404':
          description: Envelope not found
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/NotFoundProblemDetail'
        '409':
          description: >-
            Envelope is not in the SENT status, or its notifications are managed
            by Nitro rather than the sender
          content:
            application/problem+json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/EnvelopeInInvalidStateProblemDetail'
                  - $ref: >-
                      #/components/schemas/NotificationsNotManagedBySenderProblemDetail
components:
  schemas:
    ParticipantSigningUrlList:
      type: object
      description: '#### Fields'
      properties:
        items:
          type: array
          description: An array of participant signing URLs associated with the envelope
          items:
            $ref: '#/components/schemas/ParticipantSigningUrl'
        total:
          type: integer
          format: int32
          description: The total number of items available in the collection
    UnauthorizedProblemDetail:
      type: object
      description: Unauthorized error details
      example:
        type: >-
          https://developers.gonitro.com/docs/build-nitro/errors#401-unauthorized
        title: Unauthorized
        status: 401
        detail: Missing or invalid Authorization header
        instance: /sign/envelopes
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type
        title:
          type: string
          description: A short, human-readable summary of the problem type
        status:
          type: integer
          format: int32
          description: The HTTP status code
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence
        extensions:
          type: object
          additionalProperties: {}
          description: Additional problem-specific properties
    NotFoundProblemDetail:
      type: object
      description: Not Found error details
      example:
        type: https://developers.gonitro.com/docs/build-nitro/errors#404-not-found
        title: Not Found
        status: 404
        detail: Envelope with ID 'envelop-123' not found
        instance: /sign/envelopes/envelop-123
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type
        title:
          type: string
          description: A short, human-readable summary of the problem type
        status:
          type: integer
          format: int32
          description: The HTTP status code
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence
        extensions:
          type: object
          additionalProperties: {}
          description: Additional problem-specific properties
    EnvelopeInInvalidStateProblemDetail:
      type: object
      description: Envelope in invalid state
      example:
        type: https://developers.gonitro.com/docs/build-nitro/errors#409-conflict
        title: Conflict
        status: 409
        detail: Envelope in invalid state
        instance: /sign/envelopes/%s:send-for-signing
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type
        title:
          type: string
          description: A short, human-readable summary of the problem type
        status:
          type: integer
          format: int32
          description: The HTTP status code
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence
        extensions:
          type: object
          additionalProperties: {}
          description: Additional problem-specific properties
    NotificationsNotManagedBySenderProblemDetail:
      type: object
      description: Signing URLs requested for an envelope whose notifications Nitro sends
      example:
        type: https://developers.gonitro.com/docs/build-nitro/errors#409-conflict
        title: Conflict
        status: 409
        detail: Signing URLs are only available when notificationsManagedBy is sender
        instance: /sign/envelopes/%s/participants/signing-urls
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type
        title:
          type: string
          description: A short, human-readable summary of the problem type
        status:
          type: integer
          format: int32
          description: The HTTP status code
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence
        extensions:
          type: object
          additionalProperties: {}
          description: Additional problem-specific properties
    ParticipantSigningUrl:
      type: object
      properties:
        participantID:
          type: string
          format: uuid
          description: The unique identifier of the participant
        signingUrl:
          type: string
          description: >-
            The URL the participant uses to access the envelope. Signers are
            taken to the signing experience; CC participants are taken to a
            read-only view.
        expiresAt:
          type: string
          format: date-time
          description: Timestamp at which the URL expires
      required:
        - participantID
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````