# Send an envelope using a template

Templates are useful for when you send the same document repeatedly, such as onboarding forms, sales contracts, or compliance documents. With a template, fields and signing steps are already configured. You only need to supply signer details and any optional prefilled values.

## Prerequisites

Ensure you have:

- Completed the [Authentication guide](/authentication)
- A template created in the Signable web app
- API credentials configured


## Workflow overview

1. Create your template in the Signable web app
2. Retrieve template details using its fingerprint
3. Submit the envelope request referencing the template


## Create your template

Create and configure your template in the Signable web app:

1. Go to [Templates](https://signable.app/templates/page/1).
2. Upload your document.
3. Add fields and parties.
4. (Optional) Mark fields as prefillable if you want to populate them through the API.


## Retrieve template details

Before sending an envelope, retrieve the template identifiers you need for the API request.

### List your templates

Send a GET request to retrieve all templates available to your account:


```http
GET https://api.signable.co.uk/v1/templates/
```

From the response, find the template you want to use by checking the `template_title`. Copy its `template_fingerprint` for use in the next request.

For full endpoint details, see [List templates](/openapi/templates/listtemplates).

### Retrieve details for a specific template

Send a GET request with the template fingerprint to retrieve its configuration:


```http
GET https://api.signable.co.uk/v1/templates/{template_fingerprint}
```

**Example response:**


```json
{
  "http": 200,
  "template_id": "53690003",
  "template_parties": [
    {
      "party_id": "20459705",
      "party_name": "Party",
      "party_merge_fields": [
        {
          "field_id": "450927743",
          "field_merge": "Name of Sender",
          "field_type": "text"
        }
      ]
    }
  ]
}
```

### Understand the response

The response contains two sets of identifiers you need for the envelope request:

| Field | Description |
|  --- | --- |
| `party_id` | Unique identifier for each party defined in the template. Use these to attach signers to the correct party positions. |
| `field_id` | Identifier for merge fields you can prefill, such as text fields or dates. |


These identifiers ensure your API request maps correctly to the template structure.

## Create the envelope request

Once you have the `template_fingerprint`, `party_id`, and optional `field_id` values, send a POST request to create the envelope:


```http
POST https://api.signable.co.uk/v1/envelopes
```

**Example request body:**


```json
{
  "envelope_title": "Melbourne Road 23/06/25",
  "envelope_parties": [
    {
      "party_name": "Alex Mitchell",
      "party_email": "alex@example.co.uk",
      "party_id": "20748256",
      "party_role": "signer"
    },
    {
      "party_name": "Jordan Smith",
      "party_email": "jordan@example.co.uk",
      "party_id": "20748255",
      "party_role": "signer"
    }
  ],
  "envelope_documents": [
    {
      "document_title": "TC 2025 v2",
      "document_template_fingerprint": "28f9add86f25028df2eee9adee866aba",
      "document_merge_fields": [
        {
          "field_id": "454958773",
          "field_value": "Note that breakables are not included in rent cost"
        }
      ]
    }
  ]
}
```

### Understand the request

This request does the following:

- Assigns Alex Mitchell to the template party with `party_id: 20748256`
- Assigns Jordan Smith to the template party with `party_id: 20748255`
- Prefills the merge field with `field_id: 454958773` with the specified text


The signers are mapped to their designated fields, and prefilled content is added to the template before Signable sends it to recipients.

## After you send the request

A successful request returns an envelope fingerprint in the response. Signable sends each signer an email with their signing link.

To track envelope progress programmatically, subscribe to webhooks for status updates.

## Related guides

- [Send an envelope using multiple templates](/guides/send-envelope/send-envelope-multiple-template) — Combine several templates into a single envelope for complex workflows
- [Send an envelope with an uploaded document](/guides/send-envelope/send-envelope-uploaded-document) — Send a document without using a template
- [Webhooks](/webhooks) — Configure notifications to track when signers complete documents