API - ÖversiktAPI - Anslutning och auktorisering Konfigurera API-nycklar, testa anslutningen och lär dig hantera fel och begränsningar för förfrågningar.
Innehållsförteckning Ändpunktsöversikt Metod Ändpunkt Beskrivning Åtkomst GET/public-api/healthz Hälsokontroll av tjänsten. offentligGET/public-api/v1/auth/check Validerar uppgifter och returnerar butik, behörighetsomfång och planfunktioner. valfria autentiserade uppgifter
https://alterproduct.com/public-api/v1
Skapa API-uppgifter i panelen för e-handelsinställningar. Access Token visas bara en gång, så spara den omedelbart i din backends lagring för hemligheter.
Behåll Access Key och Access Token på din server. Autentiserade ändpunkter avvisar webbläsaranrop med Origin- eller Referer-huvuden.
Uppgifter kan ha begränsade behörighetsomfång. Använd GET /auth/check för att kontrollera aktiv butik, planfunktioner och behörighetsomfång för uppgifterna.
x-alter-access-key: YOUR_API_KEY
x-alter-access-token: YOUR_API_TOKENParameter Obligatoriskt Detaljer x-alter-access-keyja Offentlig identifierare för uppgifter. x-alter-access-tokenja Hemlig token som hör till åtkomstnyckeln. x-alter-client-fingerprintnej Valfritt stabilt fingeravtryck för anropsbegränsning av inbäddningssessioner. Authorizationendast runtime Bearer-token från POST /embed/session, används av /runtime/bootstrap.
Använd autentiseringskontrollens ändpunkt innan du aktiverar synkronisering eller inbäddning i en produktionsintegration.
GET https://alterproduct.com/public-api/v1/auth/check Exempel på begäran (fetch)
const response = await fetch ( 'https://alterproduct.com/public-api/v1/auth/check' , {
method : 'GET' ,
headers : {
'x-alter-access-key' : process . env . ALTER_ACCESS_KEY ,
'x-alter-access-token' : process . env . ALTER_ACCESS_TOKEN
}
} ) ;
const payload = await response . json ( ) ;
if ( ! response . ok ) {
throw new Error ( payload ?. code || payload ?. error || ` Alter API ${ response . status } ` ) ;
}
console . log ( payload ) ; Exempel på svar
{
"ok" : true ,
"message" : "success" ,
"storefrontId" : 12 ,
"userOwnerId" : 34 ,
"credentialId" : 56 ,
"scopes" : [ "orders:read" , "orders:write" , "products:read" ] ,
"plan" : {
"requiredPlan" : "Business" ,
"currentPlanName" : "Business" ,
"eligible" : true ,
"runtimeFlags" : {
"viewer" : true ,
"configurator" : true ,
"customizer" : true
} ,
"limits" : {
"activeRuntimeBindingsLimit" : 100 ,
"monthlyReassignmentLimit" : 1000 ,
"monthlyEmbedTokenLimit" : 50000
}
}
} Hjälpfunktionen nedan används i de återstående exemplen. Den använder vanlig fetch och kan köras i Node.js 18+ eller annan servermiljö med stöd för fetch.
const ALTER_API_BASE = 'https://alterproduct.com/public-api/v1' ;
const authHeaders = {
'x-alter-access-key' : process . env . ALTER_ACCESS_KEY ,
'x-alter-access-token' : process . env . ALTER_ACCESS_TOKEN
} ;
async function alterFetch ( path , options = { } ) {
const response = await fetch ( ` ${ ALTER_API_BASE } ${ path } ` , {
... options ,
headers : {
... authHeaders ,
... ( options . body ? { 'Content-Type' : 'application/json' } : { } ) ,
... options . headers
}
} ) ;
const payload = await response . json ( ) . catch ( ( ) => null ) ;
if ( ! response . ok ) {
throw new Error ( payload ?. code || payload ?. error || ` Alter API ${ response . status } ` ) ;
}
return payload ;
} De flesta controllerfel normaliseras till ett svar med code. Autentiseringsmiddleware och anropsbegränsare kan i stället returnera ett svar med error.
// Controller error
{
"code" : "assetCatalog.invalidType"
}
// Auth middleware or rate limit
{
"error" : "Unauthorized"
}
{
"error" : "Too Many Requests"
} Typ Gräns Tidsfönster Globalt600 anrop 60 sekunder GET /auth/check60 anrop 60 sekunder Läsning av beställningar/produkter300 anrop 60 sekunder Skrivning av beställningar/inbäddningssessioner/runtimekopplingar120 anrop 60 sekunder Läsning av resurser/designimport180 anrop 60 sekunder Typsnitt300 anrop 60 sekunder WP-anslutningsutbyte30 anrop 60 sekunder GET /model-generator/*600 anrop 60 sekunder
API - ÖversiktAPI - Viewer, Configurator och Customizer