---
title: "Get signing request users"
method: GET
path: "/signing-requests/{id}/users"
tags: ["Signing Requests"]
---

# Get signing request users

`GET /signing-requests/{id}/users`

Retrieve all recipients/users for a specific signing request

## Path parameters

- `id` string, uuid, required

## Response `200`

Signing request users retrieved successfully

- SigningRequestUserListResponse — List of signing request users
  - `results` SigningRequestUser[], required
    - `id` string, uuid, required — Unique identifier for the signing request user
    - `name` string — Recipient name (combined first and last name)
    - `email` string, email, required — Recipient email address
    - `first_name` string, nullable, required — Recipient first name
    - `last_name` string, nullable — Recipient last name
    - `designation` 'Signer' | 'Approver' | 'CC', required — Role of the recipient. Signer signs the document, Approver approves with approval fields, CC receives a copy when complete.
    - `order` integer, required — Signing order
    - `finished_on` string, date-time, nullable — Timestamp when this recipient completed all actions
    - `declined_on` string, date-time, nullable — Timestamp when this recipient declined to sign
    - `decline_reason` string, nullable — Reason provided by recipient for declining
    - `phone_number` string, nullable — Recipient phone number
    - `street_address` string, nullable — Recipient street address
    - `city` string, nullable — Recipient city
    - `state_province` string, nullable — Recipient state or province
    - `postal_code` string, nullable — Recipient postal code
    - `country` string, nullable — Recipient country
    - `title` string, nullable — Recipient job title
    - `company` string, nullable — Recipient company name
    - `custom_fields` object, nullable — Custom field values for this recipient
    - `required_fields` string[] — List of recipient data fields required for sending (based on fields with variable_name mappings). Always includes 'email' and 'first_name'.
    - `missing_fields` string[] — List of required fields that are currently empty for this recipient
    - `required_read_only_fields` object[] — List of required read-only fields that need pre-filled values before sending
      - `variable_name` string, nullable — Variable name of the read-only field
      - `variable_defined_name` string, nullable — Human-readable field name from the custom field definition (e.g. 'artist_name'). Only present for fields linked to a custom field definition, null otherwise.
      - `field_type` string — Type of the field (text, date, etc.)
      - `has_value` boolean — Whether this read-only field has a value set
    - `ready_to_send` boolean — Whether this recipient has all required data filled in for sending

## Other responses

- `401` — Unauthorized - Invalid or missing API key
- `404` — Not Found - Resource does not exist
- `429` — Too Many Requests - Rate limit exceeded

---

[API](https://skmtc.dev/firma/apis/firma-partner-api.md) · [All operations](https://skmtc.dev/firma/apis/firma-partner-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/firma/firma-partner-api/revisions/5c03d6a9d080/schema)
