API para desarrolladores

Documentación de la API de subida de imágenes

Sube una imagen o un lote desde una aplicación del servidor y consulta la cuota usada y restante.

Solicita acceso por correo igual que para el almacenamiento a largo plazo. El administrador enviará tu ID de usuario API y tu API Key.

URL basehttps://api.mini-tools.uk
SubidaPOST /v1/upload
Cuota usada y restanteGET /v1/usage
Historial de subidasGET /v1/images
Eliminar imagenDELETE /v1/images/:key

Autenticación

Cada solicitud debe enviar el ID asignado y la API Key correspondiente en los encabezados.

  • X-API-User-ID: assigned-user-id
  • Authorization: Bearer mtu_live_your_key
Usa ambas credenciales solo en un servidor de confianza. El ID identifica la cuenta y la API Key impide que otros la utilicen. No publiques la clave en código del navegador ni en un repositorio público.

Uso

Envía multipart/form-data. Usa file una vez para una imagen o repite el campo para un lote.

Subir una imagen

cURL
curl "https://api.mini-tools.uk/v1/upload" \
  -H "X-API-User-ID: assigned-user-id" \
  -H "Authorization: Bearer mtu_live_your_key" \
  -F "duration=7-day" \
  -F "file=@image.png"

Subir varias imágenes

cURL
curl "https://api.mini-tools.uk/v1/upload" \
  -H "X-API-User-ID: assigned-user-id" \
  -H "Authorization: Bearer mtu_live_your_key" \
  -F "duration=7-day" \
  -F "file=@first.png" \
  -F "file=@second.webp"

Reintentos seguros

Para una subida que pueda repetirse, envía un Idempotency-Key único. La misma solicitud con la misma clave devuelve el primer resultado sin volver a subir ni consumir cuota dos veces. Usar la clave con otros archivos devuelve HTTP 409.

HTTP
Idempotency-Key: upload-request-001

Campos de solicitud

CampoObligatorioDescripción
fileUna imagen o el mismo campo repetido para varias imágenes.
durationNo1-day, 7-day, 30-day o permanent. La cuenta debe permitir el tipo elegido.

Respuesta de subida

El éxito completo devuelve HTTP 201. Un lote parcialmente correcto devuelve HTTP 207 y detalla cada resultado.

JSON
{
  "success": true,
  "partial": false,
  "uploaded": [
    {
      "success": true,
      "key": "7-day/example.png",
      "url": "https://pub.mini-tools.uk/7-day/example.png",
      "duration": "7-day",
      "expires_at": "2026-08-05T12:00:00.000Z",
      "size": 24831,
      "mime": "image/png",
      "risk": "normal"
    }
  ],
  "failed": [],
  "usage": {
    "user_id": "assigned-user-id",
    "plan_type": "custom",
    "temporary": {
      "enabled": true,
      "limit": 100,
      "used": 1,
      "remaining": 99,
      "reset_at": "2026-08-05T16:00:00.000Z",
      "timezone": "Asia/Shanghai"
    },
    "permanent": {
      "enabled": false,
      "limit": 0,
      "used": 0,
      "remaining": 0
    },
    "usage_date": "2026-08-05"
  }
}

Campos devueltos

CampoDescripción
successVerdadero solo si todas las imágenes tienen éxito.
partialVerdadero si una parte del lote tiene éxito.
uploadedImágenes correctas con clave, URL, duración, caducidad, tamaño, MIME y estado de revisión.
failedFallos con índice, nombre, mensaje y código de error.
accountDatos de cuota planos para compatibilidad.
usageLímites actuales y cantidades usadas y restantes.

Obtener cuota usada y restante

Llama al endpoint antes o después de subir. La consulta no consume cuota.

cURL
curl "https://api.mini-tools.uk/v1/usage" \
  -H "X-API-User-ID: assigned-user-id" \
  -H "Authorization: Bearer mtu_live_your_key"
JSON
{
  "success": true,
  "usage": {
    "user_id": "assigned-user-id",
    "plan_type": "custom",
    "temporary": {
      "enabled": true,
      "limit": 100,
      "used": 24,
      "remaining": 76,
      "reset_at": "2026-08-05T16:00:00.000Z",
      "timezone": "Asia/Shanghai"
    },
    "permanent": {
      "enabled": false,
      "limit": 0,
      "used": 0,
      "remaining": 0
    },
    "usage_date": "2026-08-05"
  }
}

Consultar el historial de subidas

Devuelve solo las subidas activas del usuario API actual. Cada URL pública se puede usar directamente. No incluye duración, caducidad ni estado de revisión.

cURL
curl "https://api.mini-tools.uk/v1/images?limit=20" \
  -H "X-API-User-ID: assigned-user-id" \
  -H "Authorization: Bearer mtu_live_your_key"
JSON
{
  "success": true,
  "records": [
    {
      "key": "7-day/example.png",
      "url": "https://pub.mini-tools.uk/7-day/example.png",
      "size": 24831,
      "mime": "image/png",
      "uploaded_at": "2026-08-05T12:00:00.000Z"
    }
  ],
  "next_cursor": null
}

limit es 20 por defecto y 100 como máximo. Cuando next_cursor no sea null, envíalo como parámetro cursor para obtener la página siguiente.

Eliminar una imagen subida

Elimina una imagen del usuario API autenticado. No se pueden eliminar imágenes de otro usuario API. La eliminación no restaura la cuota diaria ni la permanente.

cURL
curl -X DELETE "https://api.mini-tools.uk/v1/images/7-day/example.png" \
  -H "X-API-User-ID: assigned-user-id" \
  -H "Authorization: Bearer mtu_live_your_key"
JSON
{
  "success": true,
  "deleted": {
    "key": "7-day/example.png",
    "url": "https://pub.mini-tools.uk/7-day/example.png"
  }
}

Limitaciones

  • Formatos: JPG, PNG, GIF y WebP.
  • Máximo 5 MB por imagen.
  • Máximo 10 imágenes y 25 MB por solicitud.
  • Duración: 1-day, 7-day, 30-day o permanent, según los permisos.
  • Solo las imágenes correctas consumen cuota. La cuota temporal se reinicia a medianoche en Asia/Shanghai; la permanente es total.
  • Usa un Idempotency-Key único en subidas que puedan repetirse para evitar imágenes duplicadas y doble consumo de cuota.
  • Las credenciales API solo se activan después de que el administrador verifique el correo del solicitante. Las subidas API siguen sujetas a revisión de contenido.
  • Las mismas reglas se aplican a la API y a la web. Las imágenes ilegales, dañinas, privadas o infractoras pueden eliminarse.

Códigos HTTP

  • 200 Consulta o eliminación correcta.
  • 201 Todas las imágenes se subieron.
  • 207 Lote parcialmente correcto.
  • 400 / 413 / 415 Solicitud, cantidad, tamaño o contenido no válido.
  • 401 / 403 Credenciales no válidas, cuenta desactivada o tipo no permitido.
  • 404 La imagen no existe o no pertenece al usuario API actual.
  • 409 El Idempotency-Key se está procesando o se reutilizó para una subida diferente.
  • 429 Cuota diaria o permanente agotada.
  • 503 Base de datos API no disponible temporalmente.

Casos de uso

  • Subir capturas desde procesos de despliegue o pruebas.
  • Subir varias imágenes de producto o documentación.
  • Comprobar la cuota antes de un lote automático.

Herramientas relacionadas

FAQ

¿Una solicitud puede subir varias imágenes?

Sí. Repite file para cada imagen dentro de los límites.

¿Basta el ID de usuario?

No. Envía el ID y la API Key correspondiente.

¿Cómo consulto la cuota restante?

Llama a GET /v1/usage o lee usage en la respuesta de subida.