Signing API
Your applications and ours
Signs PDFs, files and data; validates signatures and certificates; timestamps; keeps per-customer trust and branding; logs every operation.
Platform
SignLayer is a set of focused services and SDKs. Use the ones you need; they all meet in the Signing API.
Your applications and ours
Signs PDFs, files and data; validates signatures and certificates; timestamps; keeps per-customer trust and branding; logs every operation.
Your ERP or accounting system
Builds ETA's canonical invoice, seals it through the Signing API and the HSM, and submits, fetches, cancels or rejects documents at ETA.
The Signing API
Holds the connection to your hardware security module over PKCS#11 and signs with the company seal on request. The key never leaves the HSM.
People signing in a browser
A tray app for Windows, macOS and Linux that lets approved websites use the person's smart card or USB token. The PIN and key stay on the device.
Web developers
JavaScript that connects your web page to the desktop app and the Signing API for smart-card signing.
Mobile app developers
Sign PDFs with an ITIDA remote certificate and an OTP, with a visible stamp. White-label per brand.
Platform
Which signature types each channel supports today.
| Smart card (browser) | Phone (remote) | Company seal (HSM) | |
|---|---|---|---|
| PDF signature (PAdES) with visible stamp | Supported | Supported | Supported |
| Data or file signature (CAdES-B-B or CMS) | Supported | Not offered | Supported |
| Bare (raw) signature | Supported | Not offered | Supported |
| ETA e-invoice (CAdES, detached) | Not offered | Not offered | Supported |
| Timestamp during signing | Supported | Not offered | Not offered |
Supported Not offered
API
The public operations of the Signing API, grouped by job. Full request and response details are in the API reference.
POST/sign/data | Sign data or a file as CMS, CAdES-B-B or a bare signature, attached or detached. One call with the HSM; the first of two calls with a token. | Smart cardHSM seal |
POST/sign/finish | Complete a token signature started with /sign/data. The certificate is checked again here. | Smart card |
POST/documents/pdf/prepare | Prepare a PDF for signing with a token: signature field, visible stamp, reason and location. Returns what the token must sign. | Smart card |
POST/documents/pdf/finish | Embed the token signature into the prepared PDF and return the signed PDF (PAdES). | Smart card |
POST/documents/pdf/signWithHsm | Sign a PDF in one call with the company seal held in the HSM, with an optional visible stamp. | HSM seal |
POST/remote/pdf/embed | Embed a signature produced on the phone (remote certificate) into a PDF prepared by the mobile SDK. | Phone |
POST/raw/file/prepare | Prepare any file for a detached or attached CMS signature with a token. Legacy flow; prefer /sign/data. | Smart card |
POST/raw/file/finish | Complete a file signature started with /raw/file/prepare. Legacy flow; prefer /sign/finish. | Smart card |
POST/verify | Verify a CMS, CAdES or bare signature, attached or detached. The format can be detected automatically. | Any |
POST/documents/pdf/validate | Validate every signature in a PDF: integrity, certificate chain, expiry, and revocation through OCSP and CRL. | Any |
POST/remote/pdf/validate | Check a remotely signed PDF for integrity and later modifications. Use /documents/pdf/validate for full trust checks. | Phone |
POST/documents/office/validate | Validate the signatures in an Office document. | Any |
POST/raw/file/validate | Validate a file against its detached or attached CMS signature (.p7s). | Any |
POST/raw/text/validate | Validate a signature over a piece of text with the signer certificate. | Any |
POST/tools/certificate/validate | Validate a certificate: chain to a trusted CA, validity period and revocation status. | Any |
POST/documents/pdf/timestamp | Add a trusted document timestamp to a PDF from your RFC 3161 Timestamp Authority. | Any |
POST/raw/file/timestamp | Get an RFC 3161 timestamp token for any file. | Any |
POST/raw/uuid/timestamp | Get a timestamp token bound to an identifier. | Any |
GET/ | Health check: service status and uptime. | Any |
E-invoicing
For ERP and accounting integrations with the Egyptian Tax Authority.
POST/invoice/sign | Sign invoices with the company seal. You submit them to ETA yourself. |
POST/invoice/submit | Sign and submit up to 100 documents to ETA in one call. |
POST/invoice/validate | Check the signature on a document you hold. |
GET/invoice/:uuid | Fetch a submitted document from ETA. |
GET/invoice/:uuid/details | Fetch document details and validation results from ETA. |
GET/invoice/recent | List recent documents. |
PUT/invoice/:uuid/cancel | Cancel an issued document. |
PUT/invoice/:uuid/reject | Reject a received document. |
Platform
Platform