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

# E-Signatures

> Send PDFs for signature via the API and get back a signed, eIDAS-grade document. A drop-in path for teams migrating from DocuSeal.

The Signatures API sends a PDF for electronic signature and returns a
cryptographically signed PDF with a tamper-evident audit page (eIDAS fortified
electronic signature). It is designed as a straightforward migration target for
DocuSeal users.

## How it works

1. **Create** a signature request from a PDF, the field positions, and the
   signer(s). You receive a hosted **signing link** per signer.
2. The signer opens the link, reviews the document, and signs in the browser.
3. **Poll** the request or subscribe to the `signature_completed` webhook, then
   download the signed PDF.

No email is sent by default. You get the signing links back and use them in your
own flow. The signing page is meetergo-branded (and available in German), so you
do not need to host your own signing page.

## Coordinate model (same as DocuSeal)

Field positions are given as `areas` using **normalized** coordinates: `x`, `y`,
`w`, `h` are fractions of the page (`0`–`1`) from the **top-left** corner, and
`page` is **1-indexed**. This matches DocuSeal, so existing field layouts port
directly.

## Create a request

```bash theme={null}
curl https://api.meetergo.com/v4/signatures \
  -H "Authorization: Bearer ak_live:..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Order confirmation",
    "language": "de",
    "completedRedirectUrl": "https://app.example.com/contracts/123/signed",
    "file": "<base64-encoded PDF>",
    "fields": [
      { "name": "signature", "type": "signature",
        "areas": [{ "x": 0.1, "y": 0.85, "w": 0.35, "h": 0.07, "page": 1 }] }
    ],
    "signers": [
      { "email": "john.doe@example.com", "name": "John Doe", "role": "First Party" }
    ]
  }'
```

The response includes a `signingUrl` per signer. Field types: `signature`,
`initials`, `text`, `date`, `number`. Optional: `language` (`en`/`de`),
`completedRedirectUrl` (where the signer goes after signing), and `expiresAt`.

Endpoint details and schemas are in the [API Reference](/openapi.json) under
**Signatures V4** (`POST /v4/signatures`, `GET /v4/signatures/{id}`,
`GET /v4/signatures/{id}/document`, `DELETE /v4/signatures/{id}`,
`GET /v4/signatures/ping`).

## Get notified

Subscribe a webhook to the [`signature_completed`](/developer-docs/webhooks/events)
event instead of polling. When a request is fully signed, meetergo POSTs the
request id, signer, and a download URL for the signed PDF.

## Migrating from DocuSeal

| DocuSeal                                    | meetergo                                                                      |
| ------------------------------------------- | ----------------------------------------------------------------------------- |
| `POST /submissions/pdf`                     | `POST /v4/signatures`                                                         |
| `GET /submissions/{id}`                     | `GET /v4/signatures/{id}`                                                     |
| document `url` from the submission          | `GET /v4/signatures/{id}/document`                                            |
| `DELETE /submissions/{id}` (archive)        | `DELETE /v4/signatures/{id}`                                                  |
| `GET /templates?limit=1` (connection test)  | `GET /v4/signatures/ping`                                                     |
| `send_email: false` + your own branded page | default behaviour; links are returned and the signing page is already branded |

The `areas` coordinate model is identical, so field layouts carry over directly.

<Note>
  Signatures are eIDAS fortified electronic signatures: the document is
  cryptographically signed (PAdES, with a qualified timestamp) and a tamper-evident
  audit page is appended.
</Note>
