links

Create a public link

Creates a reusable public signing link from a file you have already uploaded with POST /files. The link is live as soon as this returns — share linkUrl yourself, Formify sends nothing.

Requirements

  • fileId is required.
  • signeeDetails must contain at least one slot.
  • Every slot with signaturePlacement: existing (the default) must include signatureBox. There is no template to inherit coordinates from.

Billing

Requires the publicLinksCreate capability. On the credits pricing model this allocates a billed link instance and charges it pro rata for the rest of the current period, then renews it each period while the link stays active. If the wallet cannot cover the charge the request is refused with 402 and no link is created. A suspended account is refused with 403.

Signatures collected through the link are charged separately, as they happen.

AI assistant

With aiAssistant.enabled set to true the link is created with status: "processing" and linkUrl is null until the assistant has finished reading the document. Poll GET /links/{linkId} until status is active.

post/links

Request

  • Base URL: https://docs-api.formify.eu/v1
  • URL: https://docs-api.formify.eu/v1/links
  • Auth: OAuth 2 (authorization code, authorization URL https://docs-api.formify.eu/v1/oauth/authorize, token URL https://docs-api.formify.eu/v1/oauth/token, scopes: write)

Request body

fileIdstring uuid required

File ID from POST /files

namestring

Name of the link. Shown in Formify, not to signers.

sharingSetting'private' | 'shared'

private (default) — only you can see and manage the link. shared — everyone on the account can. Requires the accessLevels capability.

This controls who may administer the link inside Formify. It has no effect on who may sign it: a public link is public by definition.

language'en' | 'sv' | 'es'

Language of the signing experience shown to whoever opens the link

disablePrintingboolean

Prevent signers from printing the document.

errorLanguage'en' | 'sv' | 'es'

Language for error messages

Example request

{
  "signeeDetails": [
    {
      "fullName": "Buyer",
      "signatureType": "digital_ink",
      "signaturePlacement": "existing",
      "signatureBox": {
        "page": 0,
        "x": 72,
        "y": 560,
        "scale": 1
      },
      "requireNameClarification": true
    }
  ],
  "aiAssistant": {
    "enabled": true,
    "textToSpeech": false,
    "language": "en"
  }
}

Response

Public link created successfully

linkIdstring uuid

Unique identifier of the public link

namestring

Name of the link

createdAtstring date-time

When the link was created

updatedAtstring date-time nullable

When the link was last edited

userIdstring uuid

User ID of the link owner

sharingSetting'shared' | 'private'

Who on the account may administer the link

status'active' | 'disabled' | 'processing'
  • active: the link is live and can be opened and signed.
  • disabled: the link has been switched off and no longer accepts new signers. Documents already produced by it are unaffected. There is no way to switch it back on.
  • processing: the AI assistant is still reading the document. linkUrl is null and the link cannot be edited until this finishes.

Note this is a different set of values from a document's status — a link is a source of documents rather than a signature request, so it has no signing progress of its own.

linkUrlstring nullable

The link to share. null while status is processing, because the document is not servable yet.

Uses the account's custom domain when one is configured. Formify never sends this to anyone — distributing it is up to you.

Changes

No recorded changes to this operation across all 1 revision of this API.