Skip to main content
GET
/
signing-requests
List Signing Requests
curl --request GET \
  --url https://api.firma.dev/functions/v1/signing-request-api/signing-requests \
  --header 'Authorization: <api-key>'
{
  "results": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "name": "<string>",
      "description": "<string>",
      "status": "not_sent",
      "document_url": "<string>",
      "document_url_expires_at": "2023-11-07T05:31:56Z",
      "page_count": 2,
      "expiration_hours": 168,
      "expires_at": "2023-11-07T05:31:56Z",
      "credit_cost": 1,
      "template_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "settings": {
        "allow_download": true,
        "attach_pdf_on_finish": true,
        "allow_editing_before_sending": false,
        "use_signing_order": true,
        "hand_drawn_only": false,
        "send_signing_email": true,
        "send_finish_email": true,
        "send_expiration_email": true,
        "send_cancellation_email": true,
        "require_otp_verification": null
      },
      "created_date": "2023-11-07T05:31:56Z",
      "updated_date": "2023-11-07T05:31:56Z",
      "sent_date": "2023-11-07T05:31:56Z",
      "finished_date": "2023-11-07T05:31:56Z",
      "cancelled_date": "2023-11-07T05:31:56Z",
      "declined_date": "2023-11-07T05:31:56Z",
      "recipients": [
        {
          "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "name": "<string>",
          "email": "jsmith@example.com",
          "designation": "Signer",
          "order": 2,
          "finished_date": "2023-11-07T05:31:56Z",
          "signature_details": {}
        }
      ],
      "fields": [
        {
          "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "type": "text",
          "required": true,
          "recipient_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "variable_name": "<string>",
          "variable_defined_name": "<string>",
          "position": {
            "x": 123,
            "y": 123,
            "width": 123,
            "height": 123
          },
          "value": "<string>",
          "dropdown_options": [
            "<string>"
          ],
          "format_rules": {
            "dateFormat": "MMMM dd, yyyy"
          },
          "validation_rules": {}
        }
      ]
    }
  ],
  "pagination": {
    "current_page": 123,
    "page_size": 123,
    "total_count": 123,
    "total_pages": 123
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.firma.dev/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

API key for authentication. Use your API key directly without any prefix (e.g., 'your-api-key'). Bearer prefix is optional but not required.

Query Parameters

page
integer
default:1

Page number

Required range: x >= 1
page_size
integer
default:50

Items per page

Required range: 1 <= x <= 200
name
string

Filter by signing request name (partial match, case-insensitive)

status
enum<string>

Filter by signing request status. Supports multiple comma-separated values.

Available statuses:

  • not_sent: Request created but not yet sent to signers
  • in_progress: Sent to signers but not completed, cancelled, declined, or expired
  • finished: All signers have completed
  • cancelled: Request was cancelled by sender
  • declined: A signer declined to sign (request stopped)
  • deleted: Soft-deleted records (normally hidden)
  • expired: Sent but past expiration time (sent_on + expiration_hours < now)

Example: ?status=in_progress,expired

Note: The expired status uses post-filtering which may have performance implications on large datasets.

Available options:
not_sent,
in_progress,
finished,
cancelled,
declined,
deleted,
expired
created_after
string<date-time>

Filter signing requests created after this date (ISO 8601 format)

created_before
string<date-time>

Filter signing requests created before this date (ISO 8601 format)

signer_email
string

Filter by signer email address (exact match)

signer_name
string

Filter by signer name (partial match, case-insensitive)

sort_by
enum<string>
default:created_on

Field to sort by

Available options:
name,
created_on,
expiration_hours,
sent_on,
finished_on
sort_order
enum<string>
default:desc

Sort order

Available options:
asc,
desc

Response

Signing requests retrieved successfully

results
object[]
pagination
object