API-first by design
Everything in Documio is accessible via API. Create forms, submit data, verify documents, and export records programmatically.
Join the newsletterDeveloper principles
The technical philosophy behind Documio's architecture.
RESTful API
Predictable endpoints, standard HTTP methods, JSON everywhere. If you've used Stripe or Twilio, you'll feel at home.
Immutability model
Once a submission is verified, it cannot be modified. New versions create new records. This is a feature, not a limitation.
Structured data
Every document is backed by clean JSON. Query, filter, and aggregate your submission data like any database.
Event-driven
Webhooks for all lifecycle events. Build reactive integrations that respond to submissions, verifications, and exports.
The integrity model
How Documio creates verifiable, tamper-evident documents.
Document lifecycle
Submission received
Form data + metadata captured (IP, user agent, auth context)
Hash computed
SHA-256 hash generated from canonicalized JSON representation
Timestamp bound
RFC 3161 timestamp from trusted TSA anchors the hash in time
Document sealed
PDF generated with embedded hash and timestamp for independent verification
Verification: Any party can recalculate the hash from the original JSON and verify it matches the timestamp signature. This proves the document existed at the claimed time and hasn't been modified.
Quick start
Create a form and submit data in minutes.
curl -X POST https://api.documio.com/v1/forms \
-H "Authorization: Bearer dk_live_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Customer Feedback",
"fields": [
{"key": "rating", "type": "number", "required": true},
{"key": "feedback", "type": "text"},
{"key": "email", "type": "email"}
]
}'curl -X POST https://api.documio.com/v1/forms/frm_xxx/submit \
-H "Content-Type: application/json" \
-d '{
"rating": 5,
"feedback": "Great product!",
"email": "customer@example.com"
}'{
"id": "sub_7kH9xL2mN",
"status": "verified",
"integrity": {
"hash": "sha256:a7f3b2c1e8d9...",
"timestamp": "2024-01-15T09:23:42Z",
"tsa": "timestamp.documio.com"
},
"document_url": "https://docs.documio.com/v/..."
}