Referencia de la API · v1JSON + multipart

Integra el bordado en tu producto.

Una API REST práctica para la digitalización privada de imágenes y la conversión real de archivos de máquina. Esta página es la guía completa de inicio rápido, referencia de endpoints y errores.

URL base

https://embroideryfileconverter.com/api/developer/v1

Autenticación

Clave Bearer

Límite

60/min

Trabajos

Asíncrono

Las claves están limitadas por ámbito, caducan, se pueden revocar inmediatamente y se muestran solo una vez. Guárdalas en tu servidor: nunca las incluyas en código de navegador o cliente móvil.

Inicio rápido

Tu primer trabajo en tres pasos.

01

Crear una clave

Selecciona solo las capacidades que necesita tu servicio y guarda el secreto en un gestor de secretos del servidor.

02

Enviar el origen

Envía datos de formulario multipart con el flujo de trabajo, el formato de salida y un archivo de origen privado.

03

Consultar el trabajo

Usa el flujo de trabajo y el ID de trabajo devueltos hasta que el estado sea completado o fallido.

Crear un trabajo de conversión · Shell
curl -X POST https://embroideryfileconverter.com/api/developer/v1/jobs \
  -H "Authorization: Bearer $EFC_API_KEY" \
  -H "Accept: application/json" \
  -F "workflow=conversion" \
  -F "format=dst" \
  -F "[email protected]"

Autenticación

Claves Bearer con ámbito.

Envía la clave en la cabecera Authorization en cada solicitud. Una clave solo puede acceder a los trabajos de su propietario y solo a las capacidades seleccionadas al crearla.

formats:read
usage:read
jobs:read
jobs:write
Cabecera de autorización
Authorization: Bearer efc_live_...
Accept: application/json

Solo del lado del servidor

No incrusta una clave de desarrollador en una página web, binario de escritorio distribuido ni app móvil. Proxy las solicitudes a través de tu backend.

¿Necesitas acceso delegado de usuario?

Los clientes de IA deben usar MCP con OAuth y PKCE en lugar de recibir una clave de API de desarrollador.

POST /jobs

Elige el flujo de trabajo que coincida con el origen.

workflow=conversion

Archivo de máquina existente

Sube PES, DST, JEF u otro formato de bordado legible y elige una salida escribible distinta.

Necesarios
workflow, format, file
Archivo máximo
50 MB
workflow=digitising

Arte JPG, PNG, SVG o WebP

Genera una vista previa de puntadas a partir del arte. Se requiere el ancho final y el número máximo de colores de hilo.

Campos adicionales
width_mm, colour_count
Intervalos válidos
10–300 mm · 1–24 colores
Archivo máximo
20 MB

Archivos individuales y lotes

Usa file para un origen o files[] para hasta 10 orígenes. El procesamiento gratuito limitado puede aceptar un archivo por solicitud. Cada lote usa un flujo de trabajo y formato de salida compartidos.
202 Accepted
{
  "message": "Processing started.",
  "job": {
    "id": "01JEXAMPLEJOBID000000000",
    "status": "queued",
    "workflow": "conversion"
  },
  "jobs": [
    {
      "id": "01JEXAMPLEJOBID000000000",
      "status": "queued",
      "workflow": "conversion"
    }
  ],
  "freeUsage": {
    "previewRemaining": 2,
    "creditBalance": 0
  }
}

La creación es asíncrona

HTTP 202 significa que el trabajo privado fue aceptado, no que el archivo de máquina está listo. Guarda ambos job.id y job.workflow; el flujo de trabajo selecciona la ruta de estado.

queuedEsperando a un trabajador
processingEl motor está en ejecución
completedInspecciona salidas y advertencias
failedLee failureCode y failureReason

Consulta y archivos

Lee el resultado, no solo el estado.

Una respuesta completada incluye métricas analizadas, advertencias, eventos, artefactos de vista previa y archivos de salida. Las URL firmadas son de corta duración; solicita el trabajo de nuevo cuando expire una URL.

Obtener un trabajo de procesamiento · Shell
curl https://embroideryfileconverter.com/api/developer/v1/jobs/conversion/01JEXAMPLEJOBID000000000 \
  -H "Authorization: Bearer $EFC_API_KEY" \
  -H "Accept: application/json"

Métricas

Recuento de puntadas, dimensiones y mediciones específicas del motor.

Advertencias

Notas de compatibilidad o producción que debe mostrar tu interfaz.

Archivos privados

Las URL firmadas duran 10 minutos y siguen aplicando propiedad y estado de desbloqueo.

Desbloquear puede consumir un derecho

Inspecciona primero job.unlock o GET /usage. Llamar al endpoint de desbloqueo puede consumir una asignación de suscripción o créditos de procesamiento existentes. Las cuentas internas pueden desbloquear sin cargo. No abre un checkout ni compra de créditos.

Referencia de endpoints

La superficie completa de v1.

OpenAPI JSON
GET/formats

Orígenes legibles, salidas grabables y advertencias de compatibilidad.

formats:read
GET/usage

Saldo de vistas previas, créditos, costes de flujo de trabajo y fechas de reinicio.

usage:read
GET/jobs

Los 50 trabajos privados de procesamiento más recientes de la cuenta.

jobs:read
POST/jobs

Crear un trabajo de vista previa de conversión o digitalización de imagen.

jobs:write
GET/jobs/conversion/{id}

Inspeccionar un trabajo de conversión de la cuenta y sus salidas.

jobs:read
GET/jobs/digitising/{id}

Inspeccionar un trabajo de digitalización de la cuenta y sus salidas.

jobs:read
POST/jobs/{workflow}/{id}/retry

Volver a poner en cola un trabajo fallido mientras su origen privado aún existe.

jobs:write
POST/jobs/{workflow}/{id}/unlock

Desbloquear un trabajo completado con saldo o créditos existentes.

jobs:write

Respuestas de lista

GET /formats devuelve data[] y artworkInputs[]. GET /jobs devuelve data[] más freeUsage y está limitado a los 50 trabajos más recientes.

Respuestas de reintento

El reintento acepta solo un failed trabajo cuyo origen no haya caducado. Un reintento correcto devuelve HTTP 202 con el trabajo restablecido a queued.

Errores y límites de tasa

Falla claramente. Reintenta deliberadamente.

401

Clave ausente, no válida, caducada o revocada

403

Capacidad ausente o recurso que pertenece a otro usuario

404

Trabajo o archivo privado no encontrado

409

El estado del trabajo no permite esta acción

410

La carga del origen ha caducado

422

Campos, archivo, formato no válidos o cuota insuficiente

429

Límite de tasa superado

Error de validación 422
{
  "message": "The format field is invalid.",
  "errors": {
    "format": [
      "Choose an output format different from every detected source format."
    ]
  }
}

60 solicitudes por minuto

El límite general se aplica por clave de API, con un techo de red separado. Las rutas de carga, procesamiento y desbloqueo tienen controles de abuso más estrictos.

Gestionar HTTP 429

Respeta Retry-After y usa retroceso exponencial con jitter. No consultes continuamente trabajos completados o fallidos.

¿Creando para un agente de IA?

Usa OAuth + MCP, no una clave de API.

La guía del agente incluye configuración de conexión, URL de descubrimiento, OAuth PKCE, cada esquema de herramienta y ejemplos JSON-RPC listos para copiar.

Abrir documentación MCP