Zum Inhalt springen

Druckauftrag aus Base64 erstellen

Dekodieren Sie ein kleines Base64-Dokument und erstellen Sie Dokument und Druckauftrag in einer Anfrage.

POST/api/v1/print-jobs/from-base64API-Version: v1operationId: createPrintJobFromBase64Als Markdown anzeigen

Funktion dieser Methode

Dekodieren Sie ein kleines Base64-Dokument und erstellen Sie Dokument und Druckauftrag in einer Anfrage.

Authentifizierung

Senden Sie ein kurzlebiges Token in Authorization: Bearer <access_token>.

Erforderliche Scopes: print_jobs:write

Anfrage

Produktions-URL: https://public-api.cloudprint.me/api/v1/print-jobs/from-base64

Parameter

NamePositionTypErforderlichBeschreibungEinschränkungen
Idempotency-KeyheaderstringneinStabiler, vom Client erzeugter Schlüssel, damit Wiederholungen das ursprüngliche Ergebnis liefern und kein Duplikat erstellen.maxLength: 128
X-Request-IdheaderstringneinOptionale Kennung zur Anfrageverfolgung; CloudPrint gibt einen sicheren Wert im Antwort-Header zurück.maxLength: 128; example: "order-100045-attempt-1"

Anfrageinhalt

Inhaltstyp: application/json

NameTypErforderlichBeschreibungEinschränkungen
document_base64string (byte)jaVollständiger, Base64-codierter Dokumentinhalt ohne Data-URL-Präfix.
document_filenamestring | nullneinDateiname für Formaterkennung und Diagnose.example: "order-100045.pdf"
document_formatstring | nullneinExplizites Druckformat, beispielsweise pdf oder raw.enum: pdf, raw; example: "pdf"
document_raw_languagestring | nullneinDruckerbefehlssprache der RAW-Daten, beispielsweise ZPL oder EPL.enum: tspl, zpl, cpcl, escpos; example: null
printer_idstring (uuid)jaStabile CloudPrint-UUID des Zieldruckers.
copiesintegerneinAnzahl der Exemplare, die CloudPrint beim Drucker anfordert.min: 1; max: 99; example: 1
intentstringneinGeschäftlicher Zweck des Druckauftrags für die Diagnose und sinnvolle Standardwerte.enum: document, shipping_label, product_label, invoice, packing_slip, a4_document, receipt; example: "shipping_label"
color_modestringneinGewünschter Farbmodus; default verwendet die Druckereinstellungen.enum: default, monochrome, color; example: "default"
duplex_modestringneinGewünschter ein- oder beidseitiger Druckmodus.enum: default, simplex, duplex_long_edge, duplex_short_edge; example: "default"
media_width_mmnumber | nullneinGewünschte Breite des Druckmediums oder Etiketts in Millimetern.min: 1; max: 2000; example: 58
media_height_mmnumber | nullneinGewünschte Höhe des Druckmediums oder Etiketts in Millimetern.min: 1; max: 2000; example: 40
dpiinteger | nullneinZielauflösung in Punkten pro Zoll; verwenden Sie einen vom Drucker unterstützten Wert.min: 72; max: 2400; example: 203
scale_modestringneinLegt fest, ob das Dokument seine Größe behält oder an das Zielmedium angepasst wird.enum: none, fit; example: "none"
orientationstringneinGewünschte Seitenausrichtung; default verwendet die Druckereinstellungen.enum: default, portrait, landscape; example: "default"
offset_x_mmnumberneinHorizontaler Druckversatz in Millimetern.min: -2000; max: 2000; example: 0
offset_y_mmnumberneinVertikaler Druckversatz in Millimetern.min: -2000; max: 2000; example: 0
margin_top_mmnumberneinZusätzlicher Druckrand in Millimetern.min: 0; max: 2000; example: 0
margin_right_mmnumberneinZusätzlicher Druckrand in Millimetern.min: 0; max: 2000; example: 0
margin_bottom_mmnumberneinZusätzlicher Druckrand in Millimetern.min: 0; max: 2000; example: 0
margin_left_mmnumberneinZusätzlicher Druckrand in Millimetern.min: 0; max: 2000; example: 0

Anfragebeispiele

cURL

bash
curl -sS https://public-api.cloudprint.me/api/v1/print-jobs/from-base64 \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: order-100045-label' \
  -d '{
    "document_base64": "JVBERi0xLjQK...",
    "document_filename": "order-100045.pdf",
    "printer_id": "11111111-1111-4111-8111-111111111111",
    "copies": 1,
    "intent": "shipping_label",
    "media_width_mm": 58,
    "media_height_mm": 40,
    "dpi": 203
  }'

Antwort

HTTP-Status: 201 — Ressource erstellt.

Antwortfelder

NameTypErforderlichBeschreibungEinschränkungen
print_job_idstring (uuid)jaStabile UUID des Druckauftrags; für Statusabfragen und Support speichern.
document_idstring (uuid)jaStabile UUID, die nach einem erfolgreichen Dokument-Upload zurückgegeben wird.
document_mime_typestringjaMIME-Typ des bereitgestellten Dokuments.example: "application/pdf"
document_formatstringjaExplizites Druckformat, beispielsweise pdf oder raw.enum: pdf, raw; example: "pdf"
document_raw_languagestring | nulljaDruckerbefehlssprache der RAW-Daten, beispielsweise ZPL oder EPL.enum: tspl, zpl, cpcl, escpos; example: null
printer_idstring (uuid)jaStabile CloudPrint-UUID des Zieldruckers.
statusstringjaAktueller Ressourcen- oder Prozessstatus; verwenden Sie die Enum-Werte der jeweiligen Methode.enum: pending, reserved, printing, printed, failed, cancelled; example: "pending"
copiesintegerjaAnzahl der Exemplare, die CloudPrint beim Drucker anfordert.min: 1; max: 99; example: 1
intentstringjaGeschäftlicher Zweck des Druckauftrags für die Diagnose und sinnvolle Standardwerte.enum: document, shipping_label, product_label, invoice, packing_slip, a4_document, receipt; example: "shipping_label"
color_modestringjaGewünschter Farbmodus; default verwendet die Druckereinstellungen.enum: default, monochrome, color; example: "default"
duplex_modestringjaGewünschter ein- oder beidseitiger Druckmodus.enum: default, simplex, duplex_long_edge, duplex_short_edge; example: "default"
media_width_mmnumber | nulljaGewünschte Breite des Druckmediums oder Etiketts in Millimetern.min: 1; max: 2000; example: 58
media_height_mmnumber | nulljaGewünschte Höhe des Druckmediums oder Etiketts in Millimetern.min: 1; max: 2000; example: 40
dpiinteger | nulljaZielauflösung in Punkten pro Zoll; verwenden Sie einen vom Drucker unterstützten Wert.min: 72; max: 2400; example: 203
scale_modestringjaLegt fest, ob das Dokument seine Größe behält oder an das Zielmedium angepasst wird.enum: none, fit; example: "none"
orientationstringjaGewünschte Seitenausrichtung; default verwendet die Druckereinstellungen.enum: default, portrait, landscape; example: "default"
offset_x_mmnumberjaHorizontaler Druckversatz in Millimetern.min: -2000; max: 2000; example: 0
offset_y_mmnumberjaVertikaler Druckversatz in Millimetern.min: -2000; max: 2000; example: 0
margin_top_mmnumberjaZusätzlicher Druckrand in Millimetern.min: 0; max: 2000; example: 0
margin_right_mmnumberjaZusätzlicher Druckrand in Millimetern.min: 0; max: 2000; example: 0
margin_bottom_mmnumberjaZusätzlicher Druckrand in Millimetern.min: 0; max: 2000; example: 0
margin_left_mmnumberjaZusätzlicher Druckrand in Millimetern.min: 0; max: 2000; example: 0
created_atstring (date-time)jaVon CloudPrint erfasster ISO-8601-Zeitstempel.
reserved_atstring | null (date-time)jaVon CloudPrint erfasster ISO-8601-Zeitstempel.
started_atstring | null (date-time)jaVon CloudPrint erfasster ISO-8601-Zeitstempel.
completed_atstring | null (date-time)jaVon CloudPrint erfasster ISO-8601-Zeitstempel.
failure_reasonstring | nulljaMaschinenlesbarer oder diagnostischer Grund für einen fehlgeschlagenen Druck.

Beispielantwort

json
{
  "print_job_id": "11111111-1111-4111-8111-111111111111",
  "document_id": "11111111-1111-4111-8111-111111111111",
  "document_mime_type": "application/pdf",
  "document_format": "pdf",
  "document_raw_language": null,
  "printer_id": "11111111-1111-4111-8111-111111111111",
  "status": "pending",
  "copies": 1,
  "intent": "shipping_label",
  "color_mode": "default",
  "duplex_mode": "default",
  "media_width_mm": 58,
  "media_height_mm": 40,
  "dpi": 203,
  "scale_mode": "none",
  "orientation": "default",
  "offset_x_mm": 0,
  "offset_y_mm": 0,
  "margin_top_mm": 0,
  "margin_right_mm": 0,
  "margin_bottom_mm": 0,
  "margin_left_mm": 0,
  "created_at": "2026-08-06T12:00:00Z",
  "reserved_at": "2026-08-06T12:00:00Z",
  "started_at": "2026-08-06T12:00:00Z",
  "completed_at": "2026-08-06T12:00:00Z",
  "failure_reason": "string"
}

Fehler

HTTP-StatusBeschreibung
400Prüfen Sie Format und Parameter.
401Authentifizierung fehlt oder ist ungültig.
403Das Token hat nicht die erforderlichen Berechtigungen.
409Die Anfrage widerspricht dem aktuellen Zustand.
413Der Anfrageinhalt überschreitet die zulässige Größe.
415Das Format wird nicht unterstützt.
422Mindestens ein Feld ist ungültig.
429Anfragelimit überschritten; beachten Sie Retry-After.
500Interner CloudPrint-Fehler.

Hinweise zur Integration

  • Base64 vergrößert die Anfrage; verwenden Sie für größere Dokumente einen Multipart-Upload oder eine öffentliche HTTPS-URL.
  • Nutzen Sie diese Variante für kleine Belege oder Etiketten.
  • Wenden Sie dieselben Regeln für Idempotenz und Statusverfolgung an.

Verwandte Dokumentation

Anleitungen zur CloudPrint-Integration, zur Verbindung des lokalen Agenten und zum zuverlässigen Betrieb von Druckabläufen.