AI Commerce GraphQL -käyttöohje partnereille
Opi hyödyntämään AI Commercea yhteistyökumppaneidesi kanssa GraphQLin avulla.
Sisällysluettelo
Mikä on GraphQL ja miksi sitä käytetään AICommerce-ympäristössä?
GraphQL on joustava ja tehokas rajapintaratkaisu, joka mahdollistaa tarkasti räätälöityjen tietokantakyselyiden tekemisen. Toisin kuin perinteinen REST API, GraphQL antaa kumppaneille vapauden määritellä, mitä dataa he tarvitsevat, mikä vähentää turhaa tiedonsiirtoa ja nopeuttaa pyyntöjen käsittelyä.
Miten GraphQL toimii AI Commerce-ympäristössä?
AI Commerce käyttää Apollo GraphQL-palvelinta, joka vastaanottaa pyyntöjä ja palauttaa vain pyydetyn datan. Partnerit voivat käyttää GraphQL:ää hakemaan tuotteita, maita ja muita tietoja AI Commerce-alustalta.
GraphQL-pyynnöt tehdään HTTP POST -pyyntönä, ja jokaisessa pyynnössä on tarvittavat tunnistetiedot header-kentässä.
Miten tehdä GraphQL-pyyntö AI Commerceen?
GraphQL-pyynnöt tehdään JSON-muodossa kauppanne GraphQL API -yhteyspisteeseen.
📌 Esimerkki: Haetaan 5 tuotetta (POST-pyyntö)
{
"query": "{
products(limit: 5, offset: 0) {
id
name
price
}
}"
}🔗 Postman / Curl-esimerkki
curl -X POST -H "Content-Type: application/json" \
-H "X-GraphQL-Secret: "" \
-H "X-Tenant-Id: boeing" \
-H "X-Tenant-Secret: your-secret" \
--data '{"query":"{ products(limit: 5, offset: 0) { id name price } }"}' \
https://api.aicommerce.cloud/graphql✅ Pyyntö palauttaa seuraavan JSON-vastauksen:
{
"data": {
"products": [
{ "id": "632", "name": "721H", "price": 89.9 },
{ "id": "637", "name": "TC7092", "price": 49.9 },
{ "id": "697", "name": "JERONE50EUR", "price": 50 },
{ "id": "698", "name": "JERONE100EU", "price": 100 },
{ "id": "699", "name": "JERONE200EU", "price": 200 }
]
}
}Vaaditut headerit jokaisessa pyynnössä
Jokainen GraphQL-pyyntö vaatii seuraavat headerit:
| Header | Kuvaus |
|---|---|
X-GraphQL-Secret |
AI Commerce-turva-avain (pyydettävä osoitteesta info@petrosoft.fi) |
X-Tenant-Id |
Kaupan alias-tunnus (päädomain ilman domain-päätettä, esim. boeing eikä boeing.com) |
X-Tenant-Secret |
Tenantin API-avain (pyydettävä osoitteesta info@petrosoft.fi) |
Content-Type |
application/json (GraphQL tukee vain JSON-muotoisia pyyntöjä) |
Suosittelemme käyttämään AI Commerce Lambda-ympäristöä
AI Commerce käyttää Lambda-ympäristössä AWS Private DNS -palvelua, joka löytyy Route 53 -palvelusta.
✅ Tällä tavoin pysytään AI Commerce:n sisäverkossa, mikä nopeuttaa pyyntöjen käsittelyä ja parantaa tietoturvaa.
GraphQL vs. REST API – Mitä eroa?
| Ominaisuus | GraphQL | REST API |
|---|---|---|
| Pyyntöjen määrä | Yksi pyyntö riittää | Useita pyyntöjä vaaditaan |
| Palautettava data | Partneri määrittää tarkasti, mitä haetaan | API palauttaa kiinteän datamallin |
| Joustavuus | Erittäin joustava, tukee monimutkaisia kyselyitä | Kiinteästi määritelty |
| Suorituskyky | Vähentää turhia tietokantakutsuja | Saattaa tuoda liikaa tai liian vähän dataa |
✅ GraphQL mahdollistaa yksilöllisten tietokantakyselyiden kehittämisen partnereiden kanssa.
AI Commerce GraphQL - Rate Limiting
GraphQL-palvelimemme rajoittaa pyyntöjen määrän, jotta vältetään ylikuormitus. Käytössä on soft rate limiting:
- Maksimi 100 pyyntöä / 1 minuuttia per tenant
- Jos raja ylittyy, palautetaan 429 Too Many Requests
✅ Rate Limitingin hallinta:
HTTP/1.1 429 Too Many Requests
Content-Type: application/json
{
"error": "Too many requests, please try again later."
}✅ Korjaa virheet ja yritä uudelleen!
Yhteenveto
- GraphQL on tehokas ja joustava tapa hakea tietoa AI Commerce-alustasta.
-
Pyyntöihin tarvitaan oikeat headerit (
X-Tenant-ID,X-Tenant-Secret,X-GraphQL-Secret). -
Käytä aina AI Commerce:n Lambda-kuormanjakajaa (
APP_LOAD_BALANCER_URL) tietoturvan parantamiseksi. - Rate limiting suojaa palvelua ja rajoittaa pyyntöjen määrän.
- Virheiden hallinta on tärkeää → Tutki virhekoodit ja korjaa pyynnöt.
Missä on tarkempi GraphQL API -dokumentaatio?
Tämä artikkeli on yleinen opas, mutta GraphQL tarjoaa scheman introspektion, jossa on tarkemmat kyselyformaatit ja lisäominaisuudet.
GraphQL-introspektio tarkoittaa, että GraphQL-palvelin pystyy kuvailemaan oman skeemansa kyselyiden avulla. Asiakas voi lähettää erityisen introspektiokyselyn (esim. __schema tai __type), jolloin palvelin palauttaa metatietoa: mitä tyyppejä, kenttiä, argumentteja, palautustyyppejä ja direktiivejä skeemassa on. Näin työkalut kuten GraphQL Playground tai IDEt voivat generoida dokumentaation, tarjota automaattisen täydennyksen ja validoida kyselyjä ilman erillistä käsin ylläpidettävää skeemadokumentaatiota.
📩 Ota yhteyttä: info@petrosoft.fi saadaksesi oikeudet introspektioon!
🚀 Nyt olet valmis käyttämään AI Commercen GraphQL:ää tehokkaasti! 🚀