Overview
ZiaSign uses API key authentication with HMAC-SHA256 request signing. Every API request must include:
- Your API Key ID in the
X-Api-Keyheader - A timestamp in the
X-Timestampheader (ISO 8601) - A signature in the
X-Signatureheader (HMAC-SHA256)
Getting Your API Keys
- Navigate to Dashboard → Developer APIs
- Open the Credentials tab
- Click Create API Key
- Give your key a name, select scopes (permissions), and set an expiration date
- Copy both the Key ID and Secret — the secret is only shown once
Important: Store your API secret securely. Never commit it to version control or expose it in client-side code. Key creation and rotation events are recorded in the audit trail.
Request Signing
Every request must include an HMAC-SHA256 signature computed from:
signature_payload = HTTP_METHOD + "\n" + URL_PATH + "\n" + TIMESTAMP + "\n" + BODY_SHA256
Where BODY_SHA256 is the SHA-256 hash of the request body (empty string hash for GET requests).
cURL Example
JavaScript / TypeScript
Python
C#
Key Scopes
When creating an API key, select only the permissions your integration needs:
| Scope | Access |
|---|---|
documents:read | List and retrieve documents |
documents:write | Create, send, void, and delete documents |
templates:read | List and retrieve templates |
templates:write | Create, update, and delete templates |
webhooks:manage | Create and manage webhook subscriptions |
team:read | List team members and roles |
Rate Limits
API requests are rate-limited per key:
| Plan | Rate Limit |
|---|---|
| Sandbox (Free) | 60 requests/minute |
| Starter API | 300 requests/minute |
| Growth API | 1,000 requests/minute |
| Scale / Enterprise API | Custom (contact sales) |
Rate limit headers are included in every response:
Frequently asked questions
Where do I find my API keys?
Go to Dashboard → Developer APIs → Credentials tab. You can create multiple keys with different scopes and expiration dates.
What is request signing?
Request signing uses HMAC-SHA256 to create a signature from your request details and secret key. This proves the request came from you and wasn't tampered with in transit.
Can I rotate my API keys without downtime?
Yes. Create a new key, update your application, then delete the old key. ZiaSign supports multiple active keys simultaneously.
Related documentation
Documents API
Create, send, retrieve, download, and manage documents programmatically via the REST API.
Webhooks
Receive real-time HTTP notifications when documents are viewed, signed, completed, or declined.
Sandbox & Testing
Use the sandbox environment to test your integration with simulated documents, signers, and events.