Publieke API voor printbestanden

Base URL: https://app.customix.io/api

Authenticatie: Hoe krijg ik een Customix-API-sleutel

Authorization: Bearer {your-api-token}

Limiet: 100 verzoeken per minuut (per gebruiker)

Overzicht

Verstuur een productpersonalisatie als gewone tekst met meerdere regels en ontvang
een lijst met URL's van printbestanden voor die inzending.

Printbestanden aanmaken

POST /print-files

Request body

VeldTypeVerplichtBeschrijving
shop_namestringJaDe naam van je winkel (bijv. my-etsy-shop)
namestringJaNaam van een sjabloon dat je in deze winkel bezit. Het eerste sjabloon dat met de naam overeenkomt, wordt gebruikt.
contentstringJaPersonalisatie met meerdere regels. Elke regel is <option name>: <value>. Een voorafgaand - is optioneel.

Inhoudsformaat

Elke regel koppelt één personaliseerbare optie van het sjabloon aan een waarde.

  • Optienamen worden hoofdletterongevoelig vergeleken, waarbij omringende spaties worden genegeerd.
  • Tekst-, kleur- en datumopties nemen de waarde letterlijk over, bijvoorbeeld

Harry, #ffffff, 2026-12-25.

  • Staalopties (lettertype, afbeelding, kleur, lay-out, enz.) nemen een geheel getal dat

een van de beschikbare staalwaarden selecteert. Standaard selecteert 1 de eerste
waarde, 2 de tweede, enzovoort.

Voorbeeld:

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

Respons 201

{
  "id": "01jyz5kqxz2hrcwqzdq4jdv7r9",
  "print_file_urls": [
    "https://.../1.png",
    "https://.../2.png"
  ]
}
VeldTypeBeschrijving
idstringIdentificatie van de inzending
print_file_urlsstring[]Eén URL per printbestand in het sjabloon, in de volgorde van het sjabloon

Printbestanden zijn beschikbaar op de teruggegeven URL's zodra het genereren klaar is
(meestal een paar seconden na de respons).

Foutreacties

StatusBodyOorzaak
401{"message": "Unauthenticated."}Ontbrekend of ongeldig bearer-token
403{"message": "Unauthenticated"}Token is geldig, maar de aanroeper heeft geen toegang tot shop_name
404{"message": "Template not found: …"}Er bestaat geen sjabloon met die name in deze winkel
422{"errors": {"shop_name": […], "name": […], "content": […]}}Ontbrekende verplichte velden
422{"message": "Unknown option: <name>"}Een regel verwijst naar een optie die niet in het sjabloon bestaat
422{"message": "Swatch index N is out of range for option '…' …"}De staalindex valt buiten het beschikbare bereik
422{"message": "Option '…' expects an integer swatch index, got …"}Een niet-geheel getal is doorgegeven aan een staaloptie

Voorbeeldverzoek

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"
  }'

Bijgewerkt op: 20/05/2026