Documentație API

Conectează Data Enricher la propria platformă, PIM sau la scriptul de import. Un singur REST API, JSON la intrare și JSON la ieșire.

Acces și chei

Fiecare magazin primește propria cheie: ma- urmat de 32 de caractere. Trimite-o în antetul X-Worker-Key (sau Authorization: Bearer). O cheie funcționează doar pentru domeniile de magazin care îi aparțin; trimite domeniul în X-Shop-Domain.

POST /lookup HTTP/1.1
Host: api.data-enricher.com
X-Worker-Key: ma-…
X-Shop-Domain: yourstore.com
Content-Type: application/json

Fiecare cheie are o limită lunară de cereri. Răspunsurile din cache nu se contorizează. Solicită o cheie prin pagina de contact.

POST /lookup

Caută un produs după EAN și returnează datele și fotografiile verificate. EAN-8, UPC-A, EAN-13 și GTIN-14 sunt validate inclusiv cifra de control; UPC-A devine EAN-13.

{"ean": "7333377653917", "name": "Husqvarna 550i XP", "refresh": false}
CâmpSemnificație
eanObligatoriu. Codul de bare al produsului.
nameOpțional. Numele din magazinul tău; ajută pentru codurile EAN care sunt neclare online. Cel mult 128 de caractere.
refreshOpțional. true caută din nou în loc să folosească memoria cache.
{"result": {
  "ean": "7333377653917", "identified": true, "name": "Husqvarna 550i XP",
  "description": "…", "specs": {"Battery voltage": "36 V"},
  "images": {"in_use": ["https://…"], "product": ["https://…"]},
  "sources": ["https://…"], "cached": false, "credits_used": 0, "search": "free"
}}

Sunt returnate cel mult opt fotografii, cele cu produsul în utilizare mai întâi, păstrând întotdeauna loc pentru cel puțin trei fotografii de produs, când există. O eroare apare în result.error; în acest caz nu se stochează nimic, așa că poți încerca din nou mai târziu.

POST /text

Scrie textele de produs într-o limbă: titlu, descriere scurtă și lungă, meta titlu și meta descriere.

{"ean": "7333377653917", "name": "Husqvarna 550i XP", "language": "en", "format": "html"}

language este un cod ISO: nl, en, de, fr, es, it, pt, pl, da, sv, no, fi, cs, ro, zh, ja, ru sau ko. Un alt cod revine la engleză, cu un avertisment warning. format este html sau text.

Pe lângă descrierea gata pregătită description primești descrierea pe părți: intro_html și sections (caracteristici, de ce să-l alegi, avantaje, dezavantaje, conținutul cutiei, întrebări frecvente, despre marcă), fiecare cu un titlu în limba textului. Construiește propria descriere cu secțiunile și ordinea dorite. details conține totul și ca date: specificații, proprietăți, cuvinte-cheie, culori, materiale și dimensiuni.

POST /page-text

Texte pentru o pagină de categorie sau marcă: o descriere scurtă pentru partea de sus, o descriere lungă în secțiuni, un meta titlu și o meta descriere, cu linkuri interne către paginile propriului magazin.

{"type": "category", "entity_id": 12, "name": "Chainsaws", "language": "en",
 "path": "Garden > Chainsaws", "subcategories": ["Cordless chainsaws"],
 "brands": ["Husqvarna"], "products": ["Husqvarna 550i XP"],
 "links": [{"type": "subcategory", "title": "Cordless chainsaws", "url": "https://yourstore.com/cordless-chainsaws"}],
 "shop_name": "Your Store"}

Linkurile duc doar la URL-urile pe care le trimiți, fiecare URL cel mult o dată și cel mult șase per text. Pentru o marcă ("type": "brand") trimite categories în loc de subcategories și brands; API-ul caută apoi marca și pe web.

POST /jobs

Până la douăzeci de coduri EAN odată, cinci căutate simultan. Primești imediat un job_id înapoi.

{"items": [{"ean": "7333377653917", "name": "Husqvarna 550i XP"}, {"ean": "8716637053167"}]}

Urmărește progresul cu GET /jobs/{job_id}: status este queued, running sau done, iar results păstrează ordinea cererii tale.

GET /usage

Utilizarea și limitele tale în perioada curentă: cereri, credite și tokenuri AI.

Erori

StareSemnificație
400JSON nevalid.
403Cheie greșită sau domeniul magazinului nu aparține cheii.
413Cererea este prea mare.
422Niciun EAN valid într-un lot.
429Prea multe cereri sau limita pachetului tău a fost atinsă.

Erorile de conținut, cum ar fi un produs care nu poate fi găsit, sunt returnate cu starea 200 și un câmp error în rezultat.

Întrebări despre API

Cum obțin o cheie API?

Solicită o cheie prin pagina de contact. Fiecare magazin primește propria cheie, care funcționează doar pentru domeniile magazinului care aparțin de acesta.

Cererile repetate se iau în considerare pentru limita mea?

Nu. Răspunsurile din cache nu se iau în considerare.

Câte EAN-uri pot trimite simultan?

Până la douăzeci într-un singur batch prin jobs. Dintre acestea, cinci sunt căutate simultan.

Ce se întâmplă dacă un produs nu poate fi găsit?

Atunci primești starea 200 cu o eroare în rezultat. Nimic nu este salvat, astfel încât să poți încerca din nou mai târziu.