Documentación de la API para generación de firmas
Crea firmas manuscritas directamente desde tu código. Una API REST sencilla, autenticación por clave, formatos PNG · SVG · JPG · PDF y límites claros por plan.
⚡ Inicio rápido
Tres pasos desde el registro hasta tu primera firma.
Obtén una clave
Crea tu clave de API en la página de API de tu cuenta. La clave completa se muestra una sola vez.
Envía una solicitud
Haz un POST a /api/v1/signatures con un nombre y un apellido.
Obtén tu firma
La respuesta contiene la firma en el formato elegido (PNG, SVG, JPG o PDF) y su hash para volver a generarla.
🔗 URL base
Todas las respuestas son JSON. En caso de éxito: { "success": true, "data": {…}, "meta": {…} }; en caso de error: { "success": false, "error": { "code", "message" } }.
https://onlinesignatures.net/api/v1
🔑 Autenticación
Cada solicitud necesita un token Bearer en la cabecera Authorization. Crea y gestiona las claves en la página de API de tu cuenta: la clave completa se muestra una sola vez.
curl https://onlinesignatures.net/api/v1/usage \ -H "Authorization: Bearer sk_live_your_token"
🎨 Formatos de salida
Por defecto, la firma se devuelve como PNG con fondo transparente. Añade el parámetro format para obtener otro formato; no consume cuota adicional.
png
por defectoFondo transparente. Ideal para superponer en documentos.
svg
para webFirma incrustada en SVG: fácil de escalar e insertar en HTML.
jpg
ligeroFondo blanco, el menor tamaño de archivo.
Un PDF listo para usar con la firma.
format_not_allowed (403).| Plan | Claves | Solicitudes / mes | Solicitudes / minuto | PNG | SVG | JPG | |
|---|---|---|---|---|---|---|---|
| API Start | 4 | 5 000 | 50 | ✓ | — | — | — |
| API Pro | 5 | 60 000 | 300 | ✓ | ✓ | ✓ | — |
| API Business | 15 | 250 000 | 5 000 | ✓ | ✓ | ✓ | ✓ |
| API Scale | 50 | 1 000 000 | 3 000 | ✓ | ✓ | ✓ | ✓ |
Claves = cuántas claves de API puedes crear en este plan. Solicitudes / mes es la cuota principal; solicitudes / minuto es el límite contra ráfagas.
🔍 Calidad de imagen
De forma predeterminada, la firma se devuelve en calidad estándar (1×). Añade el parámetro quality para obtener una imagen más grande y nítida: 2× tiene el doble de píxeles y 4× el cuádruple. No consume cuota adicional.
quality: 1
por defectoTamaño estándar. Perfecto para pantallas y páginas web.
quality: 2
más nítidaEl doble de píxeles. Más nítida en documentos y en pantallas de alta densidad.
quality: 4
máximaCuatro veces los píxeles. Ideal para impresión y formatos grandes.
curl -X POST https://onlinesignatures.net/api/v1/signatures \ -H "Authorization: Bearer sk_live_..." \ -H "Content-Type: application/json" \ -d '{"first_name":"Signature", "last_name":"Generator", "format":"png", "quality":4}'
quality_not_allowed (403) y la solicitud no se cuenta.La misma firma con otra calidad
Para obtener exactamente la misma firma con otra calidad, guarda el hash de la respuesta y vuelve a solicitarla con POST /api/v1/signatures/replay. Cada llamada cuenta como una solicitud.
curl -X POST https://onlinesignatures.net/api/v1/signatures/replay \ -H "Authorization: Bearer sk_live_..." \ -H "Content-Type: application/json" \ -d '{"hash":"eyJpdiI6...", "format":"png", "quality":4}'
Genera una firma nueva a partir de un nombre y un apellido.
curl -X POST https://onlinesignatures.net/api/v1/signatures \ -H "Authorization: Bearer sk_live_..." \ -H "Content-Type: application/json" \ -d '{"first_name":"Signature", "last_name":"Generator"}'
curl -X POST https://onlinesignatures.net/api/v1/signatures \ -H "Authorization: Bearer sk_live_..." \ -H "Content-Type: application/json" \ -d '{"first_name":"Signature", "last_name":"Generator", "format":"pdf"}'
Parámetros
{
"success": true,
"data": {
"id": 1842,
"hash": "eyJpdiI6...",
"format": "pdf",
"mime": "application/pdf",
"signature": "data:application/pdf;
base64,JVBER..."
},
"meta": { "quota": { "remaining":179 } }
}
{
"success": false,
"error": {
"code": "format_not_allowed",
"message": "The pdf format is
not available on
your plan."
}
}
Vuelve a generar una firma creada anteriormente por su hash. También puedes indicar el formato con ?format=.
curl "https://onlinesignatures.net/api/v1/signatures/{hash}?format=svg" \ -H "Authorization: Bearer sk_live_your_token"
Devuelve tu plan, los formatos disponibles, el límite mensual, lo que has usado y cuándo se reinicia.
{
"success": true,
"data": {
"plan": "Business",
"formats": ["png", "svg", "jpg"],
"rate_per_minute": 1000,
"key": { "name": "Production", "masked": "sk_live_a1b2…8f9c" },
"quota": { "limit": 500, "used": 321, "remaining": 179 }
}
}
⏱️ Límites y cuota
La cuota mensual es el límite principal y depende de tu plan (consulta Planes de API). Además, un límite de solicitudes por minuto (también por plan) protege frente a ráfagas. Las respuestas incluyen las cabeceras X-Quota-Limit, X-Quota-Remaining y X-Quota-Reset para autorregularte. Cambiar de formato no consume cuota adicional: una generación = una solicitud.
⚠️ Códigos de error
💬 Preguntas y respuestas
¿Cambiar el formato consume cuota adicional?
No. Una generación es una solicitud, independientemente del formato de salida.
¿Qué formatos están disponibles?
PNG, SVG, JPG y PDF. El conjunto de formatos disponibles depende de tu plan.
¿Qué ocurre si solicito un formato que no está en mi plan?
La API devuelve un error format_not_allowed (403) y no cuenta la solicitud.
¿Qué hace el parámetro quality?
Añade "quality": 1, 2 o 4 a la solicitud para obtener una firma más nítida y detallada. 1× es la calidad estándar; 2× y 4× son más nítidas. Start incluye 1×; Pro y los planes superiores incluyen 1×, 2× y 4×. No consume cuota adicional.
¿Cómo obtengo la misma firma en 1× y 4×?
Crea la firma una vez y guarda el hash de la respuesta. Después envía POST /api/v1/signatures/replay con ese hash y quality 1, luego 4: el nombre y la rúbrica no cambian, solo la nitidez.