Hvernig á að nota Shoply Merchant API
Shoply Merchant API gerir söluaðila kleift að nota sín eigin Shoply-gögn á öruggan hátt í skýrslugerðartólum, þjónustuferlum, tímasettum útflutningum og einkareknum viðskiptaforritum.
Hver tenging auðkennir sig með afturkallanlegum, verslunarbundnum aðgangsupplýsingum sem eru búnar til í Shoply Settings. Þú þarft ekki að deila Shopify Admin API access token, og tenging getur aðeins fengið aðgang að þeirri verslun sem gaf út aðgangsupplýsingarnar.
Hvað get ég gert með Merchant API?
Þú getur notað Merchant API til að:
- Flytja út daglegar, vikulegar eða mánaðarlegar niðurstöður yfir í töflureikni eða gagnavöruhús.
- Byggja einkamælaborð fyrir lotur, spjöll, leitir, vörusmelli, bæta-í-körfu-atburði, kaup og tekjur sem rekja má til aðgerða.
- Fylgjast með virkni viðskiptavina og finna óvenjulegar breytingar á þátttöku.
- Fara yfir spjall- og leitarlotur fyrir þjónustu, vöruframsetningu og gæðavinnu við svör.
- Sækja tímalínu einstaklingssamtals þegar verið er að rannsaka mál viðskiptavinar.
- Búa til, uppfæra, skrá og eyða sérsniðinni þekkingu sem Shoply AI notar.
- Bæta ytri vefsíðu eða upphlaðinni PDF-, texta- eða Markdown-skrá við þekkingargrunninn.
- Samræma UTC-atburðagögn við staðartímabelti verslunarinnar.
Þessi leiðarvísir skráir sjö endapunkta. Fimm þeirra eru sömu endapunktar og notaðir eru í Shoply Admin → Analytics, en tveir stýra þekkingargrunninum:
| API | Flokkur | Hverju það skilar |
|---|---|---|
admin_store_analytics | Afköst | Daglegum, vikulegum eða mánaðarlegum afkastaröðum og samtölum |
query_api_usage_count | Þátttaka | Virknitalningum flokkað eftir UTC-mínútu eða degi |
query_sessionized_chat | Samtöl | Yfirlitum yfir spjall- og leitarlotur |
query_log_visualization | Samtöl | Heildartímalínu atburða fyrir eina valda lotu |
admin_get_store_metadata | Stillingar verslunar | Tímabelti verslunarinnar sem notað er til að birta UTC-gögn rétt |
admin_store_knowledge | Þekking | Sérsniðnum texta, ytri síðum, upphlöðnum skrám, eyðingu og endurskönnun |
user_generated_file | Þekkingarskrár | Hleður upp PDF-, texta- eða Markdown-skrá áður en hún er skráð sem þekking |
Svörin hér að neðan eru dæmigerð sýnishorn. Þín svið og gildi munu endurspegla þá virkni sem hefur verið skráð fyrir verslunina þína.
Kröfa um uppsetningu: Auðkenning með leynilykli verslunareiganda verður að vera uppsett á API-þjóninum sem þú kallar á. Ef gildur leynilykill skilar HTTP
403meðNo access_token found, er sá þjónn enn að keyra eldri auðkenningarkóða sem styður aðeins access token.
Hvernig bý ég til API-leynilykil?
- Opnaðu Shoply AI stjórnborðið þitt.
- Farðu í Settings → Store owner API secret.
- Búðu til leynilykil og gefðu honum nafn sem auðkennir tenginguna, til dæmis
Weekly reporting export. - Afritaðu leynilykilinn þegar hann birtist. Shoply sýnir ódulkóðað gildi aðeins einu sinni.
Hver leynilykill gildir í 90 daga. Verslun getur haft aðskilda leynilykla fyrir aðskildar tengingar, og þú getur afturkallað einn leynilykil án þess að raska hinum.
Vistaðu þessi gildi sem umhverfisbreytur á þjónshlið:
export SHOPLY_STORE_KEY="your-store.myshopify.com"
export SHOPLY_STORE_OWNER_API_SECRETE="shoply_owner_key_example123.secret-value"Notaðu varanlegt myshopify.com lén verslunarinnar fyrir SHOPLY_STORE_KEY, jafnvel þótt viðskiptavinir heimsæki venjulega sérsniðið lén.

Hvernig virkar auðkenning?
Hver Merchant API beiðni sendir Authorization haus þar sem gildið er JSON-strengur:
{
"store_key": "your-store.myshopify.com",
"store_owner_api_secrete": "YOUR_STORE_OWNER_API_SECRET"
}store_owner_api_secrete er nákvæmlega opinbera heiti sviðsins, þar á meðal söguleg stafsetning þess. Þetta er ekki Bearer token. Settu allan JSON-strenginn beint í Authorization hausinn.
Geymdu leynilykilinn aðeins í bakendakóða. Ekki setja hann í vefslóð, browser bundle, opinbera geymslu, analytics event eða forritsannál.
Eru til opinberir pakkar fyrir Python og Node.js?
Já. Shoply gefur út tvo þjónshliðarpakka sem bæta sjálfkrafa við nauðsynlegri auðkenningu og birta Merchant API sem týpuð föll. Báðir pakkar eru opinn hugbúnaður undir GitHub-samtökunum shoplyai-public.
Python pakki
Pakkinn shoply-merchant-api styður Python 3.12 og notar Pydantic v2 svarlíkön. Settu upp festa útgáfu 2.1.3:
python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install "git+https://github.com/shoplyai-public/shoply-merchant-api.git@v2.1.3"Sæktu nýjustu spjall- og leitarloturnar sem týpuð SessionSummary líkön:
import os
from shoply_merchant_api import ShoplyMerchantClient
with ShoplyMerchantClient(
store_key=os.environ["SHOPLY_STORE_KEY"],
api_secret=os.environ["SHOPLY_STORE_OWNER_API_SECRETE"],
) as shoply:
session_response = shoply.list_sessions(limit=40)
for conversation in session_response.data:
print(conversation.customer_id, conversation.user_questions)Pakkinn býður einnig upp á föll fyrir greiningar, virknitalningar, heildartímalínur lota, tímabelti verslunar og stjórnun þekkingar. Sjá leiðbeiningar hans um viðskiptanotkunartilvik og API-tilvísun .
Node.js og TypeScript pakki
Geymslan shoply-merchant-api-js veitir pakkann @shoplyai/merchant-api fyrir Node.js 20 eða nýrri. Hann er ESM pakki með innbyggðum TypeScript-yfirlýsingum og engin keyrsluháð.
Settu upp festa útgáfu 2.1.3 beint frá GitHub:
npm install "github:shoplyai-public/shoply-merchant-api-js#v2.1.3"Sæktu sömu nýjustu lotur frá Node.js þjóni:
import { ShoplyMerchantClient } from "@shoplyai/merchant-api";
const storeKey = process.env.SHOPLY_STORE_KEY;
const apiSecret = process.env.SHOPLY_STORE_OWNER_API_SECRETE;
if (!storeKey || !apiSecret) {
throw new Error("SHOPLY_STORE_KEY and SHOPLY_STORE_OWNER_API_SECRETE are required");
}
const shoply = new ShoplyMerchantClient({
storeKey,
apiSecret,
});
const sessionResponse = await shoply.listSessions({ limit: 40 });
for (const conversation of sessionResponse.data) {
console.log(conversation.customer_id, conversation.user_questions);
}npm pakkinn nær yfir sömu Merchant API endapunkta og Python pakkinn. Sjá leiðbeiningar hans um viðskiptanotkunartilvik og API-tilvísun .
Báðir pakkarnir eru ætlaðir fyrir trausta bakendaþjónustu, tímasett verk og einkaverkfæri til innri nota. Ekki flytja hvornuggan pakkann inn í storefront-kóða né birta API-leynilykilinn í browser bundle.
Get ég kallað á HTTP API án pakka?
Já. Merchant API er áfram hefðbundið HTTPS API. Lágstigs Python dæmin hér að neðan nota Requests svo þú getir séð allan wire contract eða samþætt úr öðru forritunarmáli.
Settu upp Requests ef umhverfið þitt inniheldur það ekki þegar:
python -m pip install requestsHjálparfallið hér að neðan bætir store key og auðkenningarhaus við hverja beiðni:
import json
import os
from typing import Any
import requests
BASE_URL = "https://api.shoplyai.ai"
STORE_KEY = os.environ["SHOPLY_STORE_KEY"]
STORE_OWNER_API_SECRETE = os.environ["SHOPLY_STORE_OWNER_API_SECRETE"]
session = requests.Session()
session.headers.update({
"Authorization": json.dumps({
"store_key": STORE_KEY,
"store_owner_api_secrete": STORE_OWNER_API_SECRETE,
})
})
def shoply_get(api_name: str, **params: Any) -> dict[str, Any]:
"""Call one store-scoped Shoply API and surface HTTP or API-level errors."""
response = session.get(
f"{BASE_URL}/{api_name}",
params={"store_key": STORE_KEY, **params},
timeout=30,
)
response.raise_for_status()
payload = response.json()
if payload.get("error") is not None or payload.get("statusCode") not in (None, 200):
raise RuntimeError(payload.get("error", "Shoply API request failed"))
return payload
def shoply_post(
api_name: str,
payload: dict[str, Any] | None = None,
**params: Any,
) -> dict[str, Any]:
"""Write store-scoped data and surface HTTP or API-level errors."""
response = session.post(
f"{BASE_URL}/{api_name}",
params={"store_key": STORE_KEY, **params},
json=payload,
timeout=60,
)
response.raise_for_status()
result = response.json()
if result.get("error") is not None or result.get("statusCode") not in (None, 200):
raise RuntimeError(result.get("error", "Shoply API request failed"))
return resultDæmin hér að neðan nota þennan sameiginlega biðlara. Bæði hjálparföllin bæta sjálfkrafa við auðkennda store key-inu.
Get ég stjórnað Shoply AI þekkingu í gegnum API?
Já. admin_store_knowledge notar GET til að sækja þekkingu og POST til að búa hana til, uppfæra, eyða eða endurskanna hana. POST sem notar fyrirliggjandi þekkingarauðkenni uppfærir þá færslu; notkun nýs auðkennis býr til nýja.
Áður en þú sjálfvirknivæðir uppfærslur skaltu skipuleggja gagnlega verslunarþekkingu með dæmunum í þjálfunarleiðbeiningunum okkar.
Skrif í þekkingu geta breytt svörum sem sýnd eru viðskiptavinum. Notaðu sérstakan leynilykil fyrir kerfið sem stýrir þekkingu, sannreyndu efni áður en það er sent og birtu aldrei þessi skrifhæfu aðgangsupplýsingar í storefront JavaScript.
Birta fyrirliggjandi þekkingu
knowledge_payload = shoply_get(
"admin_store_knowledge",
knowledge_id_to_retrieve="_ALL_",
)
for knowledge_id, knowledge in knowledge_payload["data"].items():
print(knowledge_id, knowledge.get("title"))Dæmisvar
{
"data": {
"knowledge::shipping-policy": {
"title": "Shipping policy",
"text": "Orders leave our warehouse within two business days.",
"epoch_edit": 1787211246
}
}
}Búa til eða uppfæra sérsniðna textaþekkingu
Veldu stöðugt og einkvæmt þekkingarauðkenni. Endurnotaðu sama auðkenni þegar þú uppfærir þá færslu.
from time import time
knowledge_id = "knowledge::shipping-policy"
result = shoply_post(
"admin_store_knowledge",
{
knowledge_id: {
"title": "Shipping policy",
"text": (
"Orders leave our warehouse within two business days. "
"Standard delivery normally takes three to five business days."
),
"epoch_edit": int(time()),
}
},
)
print(result)Dæmisvar
{
"statusCode": 200
}Árangursríkt svar þýðir að þekkingin var vistuð. Leitarflokkun getur tekið nokkrar mínútur, þannig að nýtt svar gæti ekki birst strax. Ef API tilkynnir að efnið hafi verið vistað en flokkun tafist, staðfestu vistaða færsluna með GET áður en þú reynir skrifin aftur.
Bæta við ytri vefsíðu
Notaðu auðkenni sem byrjar á external_url::. Settu fulla http:// eða https:// vefslóð í text.
from time import time
result = shoply_post(
"admin_store_knowledge",
{
"external_url::returns-policy": {
"title": "Returns and exchanges",
"text": "https://www.example.com/policies/returns",
"epoch_edit": int(time()),
}
},
)Hlaða upp og skrá þekkingarskrá
Þekkingarskrár verða að vera PDF, TXT eða Markdown og minni en 5 MB. Hladdu fyrst upp skránni og vistaðu síðan skilaða einkastaðsetningu í S3 sem þekkingarfærslu.
from pathlib import Path
from time import time
file_path = Path("shipping-policy.md")
with file_path.open("rb") as file_handle:
upload_response = session.post(
f"{BASE_URL}/user_generated_file",
params={"store_key": STORE_KEY, "folder": "knowledge_file"},
files={"file": (file_path.name, file_handle, "text/markdown")},
timeout=60,
)
upload_response.raise_for_status()
uploaded = upload_response.json()
if uploaded.get("statusCode") != 200:
raise RuntimeError(uploaded.get("error", "Knowledge file upload failed"))
shoply_post(
"admin_store_knowledge",
{
"knowledge_file::shipping-policy": {
"title": "Shipping policy document",
"text": uploaded["file_url"],
"epoch_edit": int(time()),
}
},
)Dæmisvar við upphleðslu
{
"message": "File uploaded successfully",
"statusCode": 200,
"file_url": "s3://shoplystores/your-store.myshopify.com/uploads/shipping-policy.md"
}Meðhöndlaðu file_url sem ógagnsæja, einkastaðsetningu sem Shoply skilar. Ekki smíða hana eða breyta henni sjálf/ur.
Eyða þekkingu
Eyðing er varanleg. Sæktu fyrst núverandi færslur og sendu aðeins nákvæmlega þau auðkenni sem þú ætlar að fjarlægja.
result = shoply_post(
"admin_store_knowledge",
{
"knowledge_ids_to_delete": [
"knowledge::shipping-policy",
"external_url::returns-policy",
"knowledge_file::shipping-policy",
]
},
)Biðja um endurskönnun vefsíðu
Notaðu endurskönnun eftir að efni á vefsíðu söluaðila breytist. Hún er venjulega ekki nauðsynleg eftir hverja uppfærslu á sérsniðnum texta.
result = shoply_post(
"admin_store_knowledge",
re_crawl_ind="true",
)Viðskiptanotkunartilvik
- Samstilla leiðbeiningar um sendingu, skil, ábyrgð, stærðir eða umhirðu vara úr innra efnisstjórnunarkerfi.
- Birta tímabundnar herferðar- eða hátíðarupplýsingar án þess að afrita þær handvirkt inn í Shoply Admin.
- Bæta stefnuvefsíðu eða samþykktu skjali við þekkingargrunninn sem hluta af uppsetningarferli.
- Fjarlægja úreltar leiðbeiningar um leið og stefnu eða kynningu lýkur.
Merchant API dæmi
1. Sækja afkastagreiningar
admin_store_analytics knýr töfluna Analytics → Summary. Það skilar lotum, spjöllum, leitum, smellum, bæta-í-körfu-atburðum, kaupum og tekjum sem rekja má til aðgerða.
Endapunktur
GET https://api.shoplyai.ai/admin_store_analyticsFyrirspurnarbreytur
| Breyta | Nauðsynleg | Lýsing |
|---|---|---|
store_key | Já | Bætt við af sameiginlega biðlaranum |
report_type | Já | daily, weekly eða monthly |
start_date | Daglegt/vikulegt | UTC upphafsdagsetning með sniðinu YYYYMMDD innifalin |
end_date | Daglegt/vikulegt | UTC lokadagsetning með sniðinu YYYYMMDD innifalin |
Mánaðarlegar skýrslur nota vistaða mánaðarlega sögu Shoply og krefjast ekki dagsetningarmarka.
Python dæmi
daily_report = shoply_get(
"admin_store_analytics",
report_type="daily",
start_date="20260801",
end_date="20260820",
)
for row in daily_report["data"]:
print(row["date"], row["sessions"], row["purchases"], row["revenue"])
print("Totals:", daily_report["totals"])
# Weekly rows use the Monday of each week as their date label.
weekly_report = shoply_get(
"admin_store_analytics",
report_type="weekly",
start_date="20260701",
end_date="20260820",
)
# Monthly requests do not need start_date or end_date.
monthly_report = shoply_get("admin_store_analytics", report_type="monthly")Dæmisvar
{
"data": [
{
"date": "20260820",
"sessions": 42,
"chats": 18,
"searches": 24,
"clicks": 11,
"add_to_cart": 5,
"purchases": 2,
"revenue": "$168.00",
"revenue_usd": "$168.00"
}
],
"totals": {
"date": "totals",
"sessions": 42,
"chats": 18,
"searches": 24,
"clicks": 11,
"add_to_cart": 5,
"purchases": 2,
"revenue": "$168.00",
"revenue_usd": "$168.00"
},
"report_type": "daily"
}Tekjur geta innihaldið fleiri en einn gjaldmiðil. Meðhöndlaðu revenue sem birtingartexta. Notaðu revenue_usd þegar þú þarft staðlaða USD-gildið sem Shoply sýnir.
Viðskiptanotkunartilvik
- Senda daglegt yfirlit um áhrif á sölu til söluaðila eða netverslunarteymis.
- Bera saman leitir, vörusmelli, bæta-í-körfu-atburði og kaup til að finna hvar notendur detta út úr sölutrektinni.
- Mata vikulegt eða mánaðarlegt viðskiptagreindarmælaborð án þess að skrapa Shoply Admin síðuna.
- Fylgjast með tekjum sem rekja má til aðgerða yfir tíma og bera þær saman við breytingar á vöruframsetningu eða herferðum.
2. Sækja tímabelti verslunar
admin_get_store_metadata veitir tímabeltismerkið sem sýnt er í Analytics → Chat & Search History. Síðan notar það til að þýða UTC-virkni yfir í staðartíma verslunarinnar.
Endapunktur
GET https://api.shoplyai.ai/admin_get_store_metadataFyrirspurnarbreytur
| Breyta | Nauðsynleg | Lýsing |
|---|---|---|
store_key | Já | Bætt við af sameiginlega biðlaranum |
metadata_key | Já | Notaðu bókstaflegt gildið time_zone |
Python dæmi
timezone_payload = shoply_get(
"admin_get_store_metadata",
metadata_key="time_zone",
)
timezone = timezone_payload["data"]
print(timezone["ianaTimezone"], timezone["timezoneOffsetMinutes"])Dæmisvar
{
"data": {
"ianaTimezone": "America/Los_Angeles",
"timezoneOffset": -7,
"timezoneOffsetMinutes": -420
},
"statusCode": 200
}Viðskiptanotkunartilvik
- Flokka UTC-virkni í sömu staðbundnu almanaksdaga og söluaðilinn sér í Analytics.
- Tímasetja daglega útflutninga eftir að staðbundnum degi verslunarinnar er lokið.
- Merkja skýrslur með ótvíræðu IANA tímabelti eins og
America/Los_Angeles.
Tímabeltisfrávik geta breyst vegna sumartímareglna. Veldu frekar ianaTimezone þegar skýrslugerðarkerfið þitt styður það í stað þess að vista varanlega eitt tölulegt frávik.
3. Sækja virknitalningar
query_api_usage_count skilar virkni verslunar flokkaðri eftir UTC-dagsetningu eða upprunalegri UTC-mínútu. Það er einnig uppspretta virkni grafsins í Analytics → Chat & Search History.
Endapunktur
GET https://api.shoplyai.ai/query_api_usage_countFyrirspurnarbreytur
| Breyta | Nauðsynleg | Lýsing |
|---|---|---|
start_dt_utc | Já | UTC upphafstími sem YYYY-MM-DD HH:mm:ss |
end_dt_utc | Já | UTC lokatími sem YYYY-MM-DD HH:mm:ss |
groupby | Nei | utc_date fyrir daglegar samtölur eða utc_date_time fyrir mínúturaðir |
Python dæmi
activity = shoply_get(
"query_api_usage_count",
start_dt_utc="2026-08-01 00:00:00",
end_dt_utc="2026-08-20 23:59:59",
groupby="utc_date",
)
for row in activity["data"]:
print(row)Dæmisvar
{
"data": [
{
"utc_date": "2026-08-20",
"QA": 18,
"CHAT": 18,
"SEARCH": 20,
"CACHED_SEARCH": 4,
"PRODUCT_SEARCH": 22,
"CLICK": 11,
"ADD_TO_CART": 5,
"CHECKOUT": 2
}
]
}Raðir innihalda þá virkni teljara sem eru tiltækir fyrir tímabilið, svo sem spjallspurningar, leitir, smelli, bæta-í-körfu-atburði og checkout-atburði. Teljarar án virkni gætu vantað í stað þess að vera stilltir á núll.
Viðskiptanotkunartilvik
- Byggja klukkutíma- eða daglegt virknigraf eins og það í Chat & Search History.
- Greina óvenjulega toppa í umferð eða skyndilegt fall í þátttöku viðskiptavina.
- Bera saman leitarmagn eftir vörum við smelli, bæta-í-körfu-atburði og checkout.
- Áætla hvenær þjónustu- og vöruframsetningarteymi ættu að fara yfir annasömustu tímabilin.
4. Sækja yfirlit yfir spjall- og leitarlotur
query_sessionized_chat skilar einni þéttri færslu fyrir hverja lotu viðskiptavinar. Það knýr einnig lotulistann í Analytics → Chat & Search History.
Endapunktur
GET https://api.shoplyai.ai/query_sessionized_chatFyrirspurnarbreytur
| Breyta | Nauðsynleg | Lýsing |
|---|---|---|
start_dt_utc | Já | UTC upphafstími, eða bókstaflega gildið undefined |
end_dt_utc | Já | UTC lokatími, eða bókstaflega gildið undefined |
num_sessions | Nei | Fjöldi lota sem á að velja þegar annað hvort mark er undefined |
ScanIndexForward | Nei | Notaðu false til að velja nýjustu loturnar fyrst |
Sækja 40 nýjustu loturnar
summary_payload = shoply_get(
"query_sessionized_chat",
start_dt_utc="undefined",
end_dt_utc="undefined",
num_sessions=40,
ScanIndexForward="false",
)
sessions = summary_payload["data"]
for conversation in sessions:
print(conversation["customer_id"], conversation.get("user_questions", ""))Sækja lotur innan UTC-bils
summary_payload = shoply_get(
"query_sessionized_chat",
start_dt_utc="2026-08-20 00:00:00",
end_dt_utc="2026-08-20 23:59:59",
ScanIndexForward="false",
)Þegar bæði tímamörk eru til staðar skilar API öllum lotum á öllu bilinu; num_sessions takmarkar ekki þessa afmörkuðu fyrirspurn.
Dæmisvar
{
"data": [
{
"customer_id": "customer-or-session-id",
"user_questions": "Do you have this in blue?\nWhen will it ship?",
"start_timestamp_ms": 1787184000000,
"end_timestamp_ms": 1787184065000,
"session_types": "product information, click",
"customer_email": null,
"customer_info": {},
"sentiment": "positive",
"num_questions": 2,
"num_searches": 1,
"num_clicks": 1
}
]
}Valfrjáls svið eru mismunandi eftir lotum. Haltu customer_id, start_timestamp_ms og end_timestamp_ms ef þú ætlar að sækja heildartímalínuna.
Viðskiptanotkunartilvik
- Fara yfir úrtak nýlegra samtala með tilliti til gæði svara og þjálfunar þjónustuteymis.
- Finna endurteknar spurningar viðskiptavina sem ættu að hafa áhrif á vörutexta eða algengar spurningar.
- Greina lotur með miklum kaupásetningi sem innihalda leitir, vörusmelli eða aðrar verslunaraðgerðir.
- Flytja út eina röð fyrir hverja lotu til stefnugreiningar á meðan forðast er stærri atburðagögn á færslustigi.
5. Sækja eina heila lotu
Sendu valið yfirlit til query_log_visualization til að sækja viðskiptavina-, AI-, leitar- og viðskiptaatburði hennar.
Endapunktur
GET https://api.shoplyai.ai/query_log_visualizationFyrirspurnarbreytur
| Breyta | Nauðsynleg | Lýsing |
|---|---|---|
date_time_utc_start | Já | Upphaf lotu sniðið sem UTC YYYY-MM-DD HH:mm:ss |
date_time_utc_end | Já | Lok lotu sniðið sem UTC YYYY-MM-DD HH:mm:ss |
session_id | Nei | customer_id yfirlitsins, notað fyrir eldri sögufærslur |
start_timestamp_ms | Mælt með | Nákvæmur upphafstími yfirlitsins í millisekúndum |
Python dæmi
from datetime import datetime, timezone
def utc_from_milliseconds(timestamp_ms: int) -> str:
"""Format a Shoply millisecond timestamp for the history API."""
value = datetime.fromtimestamp(timestamp_ms / 1000, tz=timezone.utc)
return value.strftime("%Y-%m-%d %H:%M:%S")
selected = sessions[0]
timeline_payload = shoply_get(
"query_log_visualization",
date_time_utc_start=utc_from_milliseconds(selected["start_timestamp_ms"]),
date_time_utc_end=utc_from_milliseconds(selected["end_timestamp_ms"]),
session_id=selected["customer_id"],
start_timestamp_ms=selected["start_timestamp_ms"],
)
for event in timeline_payload["data"]:
print(event.get("server_timestamp_ms"), event.get("action_type"))Dæmisvar
{
"data": [
{
"action_type": "QA",
"session_id": "customer-or-session-id",
"utc_date_time": "2026-08-20 00:00:00",
"start_timestamp_ms": 1787184000000,
"server_timestamp_ms": 1787184000123,
"Q": {
"question": "Do you have this in blue?",
"question_context": {}
},
"task_id": "task-id",
"list_tokens": [
{
"data_type": "LLMOutput",
"data": "Yes. These blue options are currently available."
}
],
"dict_search_results": {}
}
]
}Tímalínan getur innihaldið spurningar viðskiptavina, AI-svör, leitarniðurstöður, vörusmelli, bæta-í-körfu-atburði, checkout-atburði og þátttöku þjónustufulltrúa. Notaðu server_timestamp_ms til að raða blönduðum atburðategundum. Eldri færslur geta innihaldið færri svið.
Viðskiptanotkunartilvik
- Yfirfara nákvæmlega hvað viðskiptavinur spurði um og hverju Shoply svaraði við rannsókn þjónustumáls.
- Fara yfir gæði svara ásamt leitarniðurstöðum og vörum sem sýndar voru kaupanda.
- Endurgera ferðina frá spurningu að smelli, bæta-í-körfu eða checkout.
- Greina eina lotu sem viðskiptavinur tilkynnti um án þess að leita í ótengdri sögu.
Get ég notað einn leynilykil fyrir hvert API?
Já. Gildur store_owner_api_secrete er bundinn við eina verslun og virkar á öllum Merchant API endapunktunum hér að ofan. Fyrir SiteChat reikninga auðkennir sami leynilykill einnig catalog upload APIs. Fyrir öruggari rekstur skaltu nota aðskilda nafngreinda leynilykla fyrir aðskilin kerfi — til dæmis einn fyrir næturútflutning gagna og annan fyrir innra mælaborð.
Ef ein tenging er lögð niður eða verður fyrir málamiðlun skaltu aðeins afturkalla hennar leynilykil í Shoply Settings. Hinar tengingarnar halda áfram að virka.
Hvað ætti ég að vita um gildistíma, persónuvernd og villur?
Skoðaðu einnig gagnagjafa og persónuvernd Shoply til að skilja hvaða upplýsingar eru tiltækar fyrir svör til viðskiptavina.
- API-leynilyklar verslunareiganda renna út eftir 90 daga. Búðu til varaleiklykil og uppfærðu tenginguna fyrir lokadag hans.
- Hefðbundið varðveislutímabil Shoply fyrir spjall- og leitarsögu er einnig 90 dagar. Gildistími leynilykils og varðveisla gagna eru aðskildar reglur.
- Sögusvör geta innihaldið persónuupplýsingar, þar á meðal auðkenni viðskiptavina, netföng, áætlaða staðsetningu, spurningar og verslunarvirkni. Geymdu og vinnslu þær í samræmi við persónuverndarstefnu þína og gildandi lög.
- HTTP
403þýðir að leynilykillinn vantar, er ógildur, útrunninn, afturkallaður eða tilheyrir annarri verslun. - HTTP
422þýðir venjulega að nauðsynlega fyrirspurnarbreytu vantar eða hún hefur rangt nafn. - HTTP
500eða svar meðstatusCode: 500þýðir að beiðnin náði til Shoply en ekki tókst að ljúka henni. Reyndu tímabundnar bilanir aftur með bakslagi og hafðu samband við okkur ef villan heldur áfram. - Notaðu afmörkuð UTC-bil fyrir útflutninga og endurtekin verk svo svör haldist viðráðanleg.
Er vöruleit hluti af Merchant API?
Opinbert API Shoply fyrir vöruleit hefur aðra auðkenningu og aðra beiðnasamninga. Sjá Hvernig á að nálgast Shoply AI Search í gegnum API ef þú vilt leitarniðurstöður fyrir vörur í upplifun sem snýr að kaupanda fremur en einkagögn söluaðila.
Geta SiteChat söluaðilar hlaðið upp vörulista?
Já. SiteChat reikningar geta hlaðið upp skipulögðum vörum og vörumyndum með sama API-leynilykli verslunareiganda. Þessir catalog endapunktar eru skjalfestir sérstaklega í Hvernig á að hlaða upp vörulistanum þínum fyrir SiteChat. Shopify verslanir halda áfram að samstilla vörur í gegnum Shopify og nota ekki þessar upphleðsluleiðir.
Fyrir aðstoð við tengingu, hafðu samband við Shoply AI.
