LogoLogoDocumentación de la API
LogoLogoDocumentación de la API
Página de inicio
Visión generalAutenticación e idempotenciaGeneración de imágenesEdición de imágenesConversión de imágenesTrabajos y espera acotadaCréditosErroresLímites de peticiones y concurrenciaRegistro de cambios de la API
Documentación de la API

Conversión de imágenes

Convertir imágenes a SVG, PPTX, PNG, PDF o TIFF

POST /api/v1/images/conversions acepta multipart/form-data. Ámbito requerido: images:convert.

Campos del formulario

CampoTipoObligatorioPredeterminadoReglas
imagefilesí—PNG, JPEG o WebP; máximo 10 MiB y 40 millones de píxeles decodificados
formatstringsí—svg, pptx, png, pdf o tiff
vector_modestringnoeditable_textsolo SVG
dpistringno300300, 600 o 1000; solo PNG, PDF y TIFF

Los dos modos SVG

Las dos opciones de SVG están implementadas y se ofrecen en el mismo endpoint:

vector_modeResultadoCréditos
editable_textSVG con texto editable siempre que sea posible10
full_vectorsalida SVG totalmente vectorizada15

Los nombres describen capacidades de salida. El enrutado de capacidades lo gestiona SciDraw AI y no forma parte del contrato público.

Edición de imágenes

Editar una imagen subida con instrucciones en lenguaje natural

Trabajos y espera acotada

Sondear trabajo asíncrono y leer resultados depurados

Tabla de contenidos

Campos del formulario
Los dos modos SVG
Otros formatos y créditos
cURL: SVG con texto editable
JavaScript
Python

Otros formatos y créditos

FormatoOpciónCréditos
pptx—10
png, pdf, tiffdpi=3005
png, pdf, tiffdpi=60010
png, pdf, tiffdpi=100015

Enviar full_vector para un formato que no sea SVG, o un DPI distinto del predeterminado para SVG o PPTX, devuelve 400 INVALID_REQUEST.

cURL: SVG con texto editable

curl https://sci-draw.com/api/v1/images/conversions \
  -H 'Authorization: Bearer sd_YOUR_KEY' \
  -H 'Idempotency-Key: figure-12-svg-editable' \
  -F 'image=@figure.png;type=image/png' \
  -F 'format=svg' \
  -F 'vector_mode=editable_text'

JavaScript

const form = new FormData();
form.set('image', file);
form.set('format', 'svg');
form.set('vector_mode', 'full_vector');
const response = await fetch('https://sci-draw.com/api/v1/images/conversions', {
  method: 'POST',
  headers: { Authorization: `Bearer ${apiKey}`, 'Idempotency-Key': crypto.randomUUID() },
  body: form,
});

Python

with open("figure.png", "rb") as image:
    response = requests.post(
        "https://sci-draw.com/api/v1/images/conversions",
        headers={"Authorization": f"Bearer {api_key}", "Idempotency-Key": str(uuid.uuid4())},
        files={"image": ("figure.png", image, "image/png")},
        data={"format": "svg", "vector_mode": "full_vector"},
    )

Usa vector_mode=full_vector para la segunda capacidad de SVG. En un trabajo correcto, result.files[0] indica format, mime_type y su URL de descarga.