Skip to main content

Documentation

API reference

Create documents, send them for signature, poll their status and collect the sealed PDF — everything the interface does, over HTTP.

Authentication

Issue a token from your profile, choosing only the scopes the integration needs. The token is shown once and stored hashed — if you lose it, issue another.

Send it as a bearer token on every request. API access is part of your plan, and it is checked on each request rather than only when the token is issued, so a token stops working if the plan lapses.

curl https://tawqee.g4t.io/api/v1/me \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/json"

Scopes

Sending is deliberately separate from creating: an integration that only drafts envelopes for a human to review should not be able to put them in front of a counterparty.

documents:read
Read documents
documents:write
Create documents
documents:send
Send for signature
documents:download
Download sealed PDFs

Endpoints

This table is generated from the routes themselves, so it cannot drift from what the API actually serves.

Method Path Scope
GET /api/v1/documents documents:read
POST /api/v1/documents documents:write
GET /api/v1/documents/{document} documents:read
GET /api/v1/documents/{document}/sealed documents:download
POST /api/v1/documents/{document}/send documents:send
GET /api/v1/me
GET /api/v1/templates documents:read
POST /api/v1/templates/{template}/use documents:write

Creating and sending in one call

Field coordinates are fractions of the page, with the origin at the top left, so they do not depend on paper size.

curl -X POST https://tawqee.g4t.io/api/v1/documents \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/json" \
  -F "title=Supplier agreement" \
  -F "file=@agreement.pdf" \
  -F "send=1" \
  -F "recipients[0][name]=Layla Al-Harbi" \
  -F "recipients[0][email]=layla@example.com" \
  -F "recipients[0][role]=signer" \
  -F "fields[0][recipient_index]=0" \
  -F "fields[0][page_number]=1" \
  -F "fields[0][type]=signature" \
  -F "fields[0][x]=0.1" -F "fields[0][y]=0.8" \
  -F "fields[0][width]=0.25" -F "fields[0][height]=0.06"

SCIM provisioning

Enterprise accounts can let their directory create, update and deactivate users through SCIM 2.0. The bearer token belongs to an SSO connection rather than to a person, and everything it can reach is scoped to that connection's email domain.

Deleting a user deactivates them. Accounts here own signed contracts and the audit trail proving who signed them, and removing an employee from a directory must not remove that.

https://tawqee.g4t.io/scim/v2

Something missing, or an endpoint behaving differently from what is written here? Tell us — the documentation being wrong is a bug.

Talk to us