API public pentru fișiere de imprimare

URL de bază: https://app.customix.io/api

Autentificare: Cum obții cheia API Customix

Authorization: Bearer {your-api-token}

Limită de cereri: 100 de cereri pe minut (per utilizator)

Prezentare generală

Trimite personalizarea unui produs sub formă de text simplu, pe mai multe rânduri, și primești înapoi o listă de
URL-uri ale fișierelor de imprimare pentru acea trimitere.

Crearea fișierelor de imprimare

POST /print-files

Corpul cererii

CâmpTipObligatoriuDescriere
shop_namestringDaNumele magazinului tău (de exemplu my-etsy-shop)
namestringDaNumele unui șablon pe care îl deții în acest magazin. Se folosește primul șablon care se potrivește cu numele.
contentstringDaPersonalizare pe mai multe rânduri. Fiecare rând este <option name>: <value>. - la început este opțional.

Formatul conținutului

Fiecare rând asociază o opțiune personalizabilă a șablonului cu o valoare.

  • Numele opțiunilor sunt comparate fără a ține cont de majuscule/minuscule, iar spațiile din jur sunt ignorate.
  • Opțiunile de tip text / culoare / dată preiau valoarea ca atare — de exemplu

Harry, #ffffff, 2026-12-25.

  • Opțiunile de tip mostră (font, imagine, culoare, aspect etc.) preiau un număr întreg care

selectează una dintre valorile de mostră disponibile. Implicit, 1 selectează prima
valoare, 2 pe a doua și tot așa.

Exemplu:

- Enter your name: Harry
- Text color: #ffffff
- Font: 1

Răspuns 201

{
  "id": "01jyz5kqxz2hrcwqzdq4jdv7r9",
  "print_file_urls": [
    "https://.../1.png",
    "https://.../2.png"
  ]
}
CâmpTipDescriere
idstringIdentificatorul trimiterii
print_file_urlsstring[]Câte un URL pentru fiecare fișier de imprimare din șablon, în ordinea din șablon

Fișierele de imprimare devin disponibile la URL-urile returnate după ce se termină generarea
(de obicei la câteva secunde după răspuns).

Răspunsuri de eroare

StareCorpCauză
401{"message": "Unauthenticated."}Token bearer lipsă sau invalid
403{"message": "Unauthenticated"}Tokenul este valid, dar apelantul nu are acces la shop_name
404{"message": "Template not found: …"}Nu există niciun șablon cu acel name în acest magazin
422{"errors": {"shop_name": […], "name": […], "content": […]}}Câmpuri obligatorii lipsă
422{"message": "Unknown option: <name>"}Un rând face referire la o opțiune care nu există în șablon
422{"message": "Swatch index N is out of range for option '…' …"}Indexul mostrei se află în afara intervalului disponibil
422{"message": "Option '…' expects an integer swatch index, got …"}O valoare care nu este număr întreg a fost transmisă unei opțiuni de tip mostră

Exemplu de cerere

curl -X POST 'https://app.customix.io/api/print-files' \
  -H 'Authorization: Bearer 01jyz0z…|abc…' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -d '{
    "shop_name": "my-etsy-shop",
    "name": "My Template",
    "content": "- Enter your name: Harry\n- Text color: #ffffff\n- Font: 1"
  }'

Actualizat la: 20/05/2026