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-filesCorpul cererii
| Câmp | Tip | Obligatoriu | Descriere |
|---|---|---|---|
shop_name | string | Da | Numele magazinului tău (de exemplu my-etsy-shop) |
name | string | Da | Numele unui șablon pe care îl deții în acest magazin. Se folosește primul șablon care se potrivește cu numele. |
content | string | Da | Personalizare 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: 1Răspuns 201
{
"id": "01jyz5kqxz2hrcwqzdq4jdv7r9",
"print_file_urls": [
"https://.../1.png",
"https://.../2.png"
]
}| Câmp | Tip | Descriere |
|---|---|---|
id | string | Identificatorul trimiterii |
print_file_urls | string[] | 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
| Stare | Corp | Cauză |
|---|---|---|
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