Izstrādātāju ceļvedis

Pieslēdziet custom veikalu Zeronode

Zeronode ir iepirkšanās asistents, kas darbojas jūsu veikalā. Tas meklē jūsu katalogā un iesaka reālus produktus ar aktuālo cenu un atlikumu. WooCommerce un Magento veikalus var pieslēgt bez izstrādes. Ja jūsu veikals ir custom risinājums, šeit atradīsiet visu, kas mums no jums vajadzīgs.

01

Pārskats

Trīs daļas. Lai palaistu live, pietiek ar produktu API.

Obligāti

Produktu API

Read-only JSON caur HTTPS. Meklēšana un trīs ieteicamie endpointi.

Neobligāti

Groza hooki

Ļauj asistentam ielikt produktus apmeklētāja grozā. Kodu rakstām mēs.

Viena rinda

Widgeta script tags

Viens script tags katrā lapā. Atslēgu nosūtīsim mēs.

02

API pamati

Kā mēs izmantojam jūsu API un ko no tā sagaidām.

  • Pieprasījumi nāk no mūsu serveriemNevis no apmeklētāja pārlūka, tāpēc CORS headeri nav vajadzīgi.
  • GET pieprasījums, atbilde JSONVisi pieprasījumi ir GET ar query parametriem.
  • ĀtriGaidām atbildi līdz 8 sekundēm, bet mērķis ir zem sekundes. Meklēšana notiek tajā pašā laikā, kad asistents raksta atbildi.
  • Nosaukumi var būt jūsuLauku un parametru nosaukumus izvēlaties paši, mēs tos mapojam savā pusē. Iespējams, pietiks ar esošu iekšējo API, tāpēc vienkārši atsūtiet to mums.
  • Saraksts var būt jebkurAtbilde var būt uzreiz masīvs vai atrasties kāda lauka iekšā, piemēram, items vai data.products.
  • Tikai publicēti produktiAtgrieziet tikai produktus, ko apmeklētājs var atvērt un nopirkt.
  • Viena valoda pieprasījumāJa veikalā ir vairākas valodas, pieņemiet parametru (piem., lang=lv) vai dodiet katrai valodai savu base URL. Nosaukumiem, aprakstiem un URL jābūt tajā pašā valodā.

Autentifikācija

Izvēlieties vienu. Dodiet atslēgai tikai kataloga lasīšanas tiesības.

Bearer token
Authorization: Bearer …
Basic auth
Authorization: Basic …Lietotājvārds un parole.
Atslēga URL
?key=…Strādā, bet atslēga paliek access logos.
03

Endpointi

Pathi ir tikai piemēri; izmantojiet to, kas der jūsu platformai.

GET/products/search
Obligāti

Produktu meklēšana

Svarīgākais endpoints: asistents to izmanto visvairāk, un ieteikumu kvalitāte ir atkarīga no meklēšanas kvalitātes.

q
Meklēšanas vārdi.
limit
Rezultātu skaits, līdz 20.
min_price
Neobligāti. Minimālā cena.
max_price
Neobligāti. Maksimālā cena.
  • Meklējiet produkta nosaukumā, produkta kodā (SKU), zīmolā un aprakstā.
  • Jāstrādā ar vairākiem vārdiem; produkti, kas atbilst visiem vārdiem, ir pirmie.
  • Lielie un mazie burti un garumzīmes nedrīkst ietekmēt rezultātu: „ūdens” atrod arī „udens”.
  • Atgrieziet produktus ar pilniem datiem (visi zemāk minētie lauki), labākās atbilstības pirmās.
GET/categories
Ieteicams

Kategorijas

Palīdz asistentam pārlūkot katalogu, kad apmeklētājs jautā pēc produktu veida, nevis konkrēta produkta.

q
Neobligāti. Filtrē kategorijas pēc nosaukuma.
limit
Kategoriju skaits.
  • Katrai kategorijai vajag id, nosaukumu un parent id. Produktu skaits ir bonuss.
GET/categories/{id}/products
Ieteicams

Kategorijas produkti

Vienas kategorijas produkti, ko var sašaurināt pēc vārdiem un cenas.

limit
Produktu skaits, parasti 20.
q
Neobligāti. Vārdi, kas sašaurina rezultātus.
page
Neobligāti. Lapas numurs, sākot no 1.
min_price, max_price
Neobligāti. Cenu diapazons.
sort
Neobligāti. price, date, title vai popularity.
order
Neobligāti. asc vai desc.
  • Atgrieziet arī apakškategoriju produktus.
GET/products/{id}
Ieteicams

Viens produkts pēc id

Ar to pirms produkta parādīšanas pārbaudām cenu un atlikumu, kā arī salīdzinām produktus.

id
Produkta id pathā.
  • Atgrieziet tos pašus laukus kā meklēšanā vai 404, ja tāda id nav.
Pamēģiniet
curl -H "X-Api-Key: YOUR_KEY" \
  "https://shop.example.com/api/products/search?q=beaker&limit=20"
04

Produktu lauki

Visi endpointi, kas atgriež produktus, atgriež šos laukus.

idObligāti

Nemainās. Tas pats id, ko izmanto jūsu grozs.

nameObligāti

Produkta nosaukums, bez kategorijām un vietnes nosaukuma.

priceObligāti

Skaitlis: cena, ko apmeklētājs maksā, ar PVN. Ja jums ir tikai cenas bez PVN, pasakiet mums PVN likmi.

urlObligāti

Pilns produkta lapas URL.

imageIeteicams

Galvenā attēla pilns URL.

stockIeteicams

instock, outofstock vai onbackorder.

descriptionIeteicams

Plain text vai vienkāršs HTML. Nolasām pirmās 600 rakstzīmes, tāpēc svarīgāko informāciju lieciet sākumā.

skuIeteicams

Produkta kods, ko izmanto apmeklētāji un jūsu darbinieki.

brandIeteicams

Ražotājs vai zīmols.

categoryIdsIeteicams

Kategorijas, kurās ir produkts.

attributesNeobligāti

Nosaukuma un vērtības pāri, piemēram, Tilpums: 250 ml.

currencyNeobligāti

ISO kods, piemēram, EUR. Ja visas cenas ir vienā valūtā, pietiek pateikt mums vienreiz.

regularPriceNeobligāti

Cena pirms atlaides, ja produktam ir atlaide.

Meklēšanas atbildes piemērs
{
  "items": [
    {
      "id": "48213",
      "name": "Glass beaker, low form, 250 ml",
      "price": 4.90,
      "currency": "EUR",
      "stock": "instock",
      "url": "https://shop.example.com/labware/glass-beaker-250-ml-48213",
      "image": "https://shop.example.com/images/48213.jpg",
      "sku": "BK-250",
      "brand": "Example Glassworks",
      "categoryIds": [12, 31],
      "description": "Borosilicate glass 3.3, heat resistant to 500 °C. Graduated from 50 to 200 ml, with spout.",
      "attributes": [
        { "name": "Volume", "value": "250 ml" },
        { "name": "Material", "value": "Borosilicate glass" }
      ]
    }
  ]
}

Kļūdas

200
Nav rezultātu: tukšs saraksts.
404
Produkts ar tādu id nav atrasts.
401 / 403
Nepareiza vai trūkstoša atslēga. Mūsu lietotne atzīmē savienojumu kā bojātu, tāpēc kļūda nepaliek nepamanīta.
JSON
Kļūdas atgrieziet kā JSON, nevis HTML error lapu vai botu pārbaudi. Ja API priekšā ir firewall, ielaidiet mūsu pieprasījumus.
05

Groza hooki

Neobligāti. Bez tiem produktu kartītes ved uz produkta lapu, un apmeklētājs pievieno preci grozam tur.

Ar groza hookiem asistents var ielikt produktus apmeklētāja grozā. Kodu rakstām mēs: tas darbojas apmeklētāja pārlūkā jūsu lapā, viņa paša sesijā, un jums nekas nav jāpievieno. Pastāstiet mums, kā skripts jūsu lapā var izdarīt šīs četras lietas:

  1. Pievienot grozamProdukta id, daudzums un variants (ja ir varianti) pašreizējā apmeklētāja grozā.
  2. Nolasīt groza saturuGrozā esošo produktu id un daudzumi.
  3. Atvērt grozuParasti pietiek ar groza lapas URL.
  4. Pievienot atlaižu koduTikai tad, ja izmantojat atlaižu kodus.

Der gan JavaScript funkcija, gan tā paša domēna endpoints. Izmantojiet tos pašus produktu id, kas API.

Divi varianti, kas der (jūsējais var atšķirties)
// Funkcija lapā …
await window.shop.cart.add({ id: '48213', quantity: 1 })

// … vai tā paša domēna endpoints, kas izmanto sesijas cookie
await fetch('/cart/add', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ id: '48213', quantity: 1 }),
})
06

Widgeta uzstādīšana

Pievienojiet script tagu katrai lapai, head sadaļā vai pirms noslēdzošā body taga. Public key nosūtīsim mēs.

HTML
<script src="https://content.zeronode.ai/zeronode-plugin.js"
        data-public-key="YOUR_PUBLIC_KEY" data-zeronode defer></script>

Ja jūsu vietne izmanto Content-Security-Policy headeri, atļaujiet šos hostus. Widgetam nav vajadzīgs ne unsafe-eval, ne inline skripti.

Content-Security-Policy
Content-Security-Policy:
  script-src https://content.zeronode.ai https://api.zeronode.ai;
  connect-src https://api.zeronode.ai wss://api.zeronode.ai;
07

Nosūtiet mums

Kad API strādā, nosūtiet mums šo informāciju, un mēs pieslēgsim veikalu.

  1. API base URL un read-only atslēga.
  2. Viens meklēšanas URL, kas atgriež rezultātus.
  3. Viens produkta id, ar ko varam testēt.
  4. Groza hookiem: funkcija vai endpoints un groza lapas URL.
Jautājumi vai gatavi pieslēgties?info@zeronode.ai
Rakstiet mums