Zign v1 API Documentation
Complete guide for developers to programmatically automate e-signatures, document tracking, and envelopes using NRKGo Zign.
Overview
The Zign REST API enables developers to automate signing workflows directly from code, scripts, or external systems without human UI intervention.
Step 1: Where to Create Your API Key
API keys are securely generated from your personal NRKGo Account portal.
👉 https://accounts.nrkgo.com/security
zign:* scope (or All Scopes) and save. Copy the generated key token (starts with nrk_live_...). Store it securely; it will not be shown again.Base URL
All v1 API requests must target the dedicated production API gateway:
Authentication
Authenticate your HTTP requests by providing your API key using either of the two supported headers:
| Header Type | Header Format | Example |
|---|---|---|
| Custom Header (Recommended) | X-API-KEY: <TOKEN> | X-API-KEY: nrk_live_9a8b7c6d5e... |
| Authorization Header | Authorization: Bearer <TOKEN> | Authorization: Bearer nrk_live_9a8b7c6d5e... |
Endpoints Reference
Retrieve all signing envelopes belonging to your organization.
| Query Parameter | Type | Required | Description |
|---|---|---|---|
org_id | integer | Yes | ID of your organization. |
page | integer | No | Page number for pagination (starts at 1). |
size | integer | No | Number of items per page (default: 10). |
curl -X GET "https://api.nrkgo.com/api/v1/zign/sign-requests?org_id=1&page=1&size=10" \
-H "X-API-KEY: nrk_live_xxxxxxxxxxxxxxxx" \
-H "Accept: application/json"{
"success": true,
"message": "Envelopes fetched successfully",
"data": [
{
"id": 104,
"orgId": 1,
"name": "Vendor NDA Agreement",
"subject": "Please review and sign NDA",
"status": "PENDING",
"trackingId": "e32049b1-5079-4a94-9844-32d847fe90aa",
"expiryDays": 15,
"createdTime": 1740000000000
}
]
}Get full details for an envelope including recipients, placement fields, and documents.
curl -X GET "https://api.nrkgo.com/api/v1/zign/sign-requests/104" \
-H "Authorization: Bearer nrk_live_xxxxxxxxxxxxxxxx" \
-H "Accept: application/json"{
"success": true,
"message": "Envelope fetched successfully",
"data": {
"envelope": {
"id": 104,
"name": "Vendor NDA Agreement",
"status": "PENDING",
"trackingId": "e32049b1-5079-4a94-9844-32d847fe90aa"
},
"documents": [
{
"id": 45,
"fileName": "nda_contract.pdf",
"pageCount": 3
}
],
"recipients": [
{
"id": 88,
"name": "Jane Doe",
"email": "[email protected]",
"role": "signer",
"status": "sent"
}
],
"fields": [
{
"id": 201,
"pageNumber": 1,
"x": 120.5,
"y": 450.0,
"width": 140.0,
"height": 45.0,
"recipientId": 88
}
]
}
}Create a draft envelope with attached documents, signers, and signature field coordinates.
curl -X POST "https://api.nrkgo.com/api/v1/zign/sign-requests" \
-H "X-API-KEY: nrk_live_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"orgId": 1,
"name": "Partnership Agreement",
"subject": "Signature needed for Partnership Agreement",
"message": "Please review and sign the attached document.",
"documentIds": [45],
"recipients": [
{
"name": "Alice Smith",
"email": "[email protected]",
"role": "signer",
"signingOrder": 1
}
]
}'{
"success": true,
"message": "Envelope with documents, recipients and fields created successfully",
"data": {
"envelope": {
"id": 105,
"orgId": 1,
"name": "Partnership Agreement",
"status": "DRAFT",
"trackingId": "b182cb01-19ce-445e-884d-2a78129eac11"
}
}
}Upload a raw PDF document to obtain a document_id for your envelopes.
curl -X POST "https://api.nrkgo.com/api/v1/zign/documents/upload?org_id=1" \
-H "X-API-KEY: nrk_live_xxxxxxxxxxxxxxxx" \
-F "file=@/path/to/contract.pdf"{
"success": true,
"message": "Independent document uploaded successfully",
"data": {
"id": 46,
"fileName": "contract.pdf",
"pageCount": 2,
"filePath": "https://api.nrkgo.com/api/v1/drive/public/..."
}
}Retrieve counts of pending, completed, draft, and expired envelopes.
curl -X GET "https://api.nrkgo.com/api/v1/zign/dashboard/stats?org_id=1" \
-H "X-API-KEY: nrk_live_xxxxxxxxxxxxxxxx"{
"success": true,
"message": "Dashboard statistics fetched successfully",
"data": {
"pending": 5,
"completed": 28,
"draft": 2,
"expired": 1,
"templates": 4
}
}