UTVIKLER · Integration API-referanse

Fabrixa Integration API-referanse

6 min lest Sist oppdatert:07-08-2026 20:55

Integration API hjelper deg med å opprette og administrere Fabrixa-ordrer, starte Fabrixa Studio og holde deg synkronisert med produksjons- og oppfyllelsesstatus via webhooks. API-en følger REST-konvensjonene og bruker JSON for alle forespørsels- og svarinstanser.

BASE URL

https://api.fabrixa.com/v2/integration

Send alle forespørsler til denne basis-URLen etterfulgt av den spesifikke endepunktbanen. Basis-URLen er grunnlaget for samhandling med Fabrixa API - hente, opprette, oppdatere eller slette ressurser.

FØR DIN FØRSTE FORESPØRSEL

Autentisering

For å få tilgang til Integration API, autentiser forespørslene dine ved å bruke både et Application Access Token og en Application Key:

Autorisasjonsoverskrift
Authorization: Bearer APPLICATION_ACCESS_TOKEN
Søknadsnøkkeloverskrift
X-Application-Key: APPLICATION_KEY
Eksempel på cURL-kommando
curl -X 'GET' \
  'https://api.fabrixa.com/v2/integration/ping' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer APPLICATION_ACCESS_TOKEN' \
  -H 'X-Application-Key: APPLICATION_KEY'

Erstatt APPLICATION_ACCESS_TOKEN med ditt faktiske tilgangstoken og APPLICATION_KEY med din faktiske applikasjonsnøkkel.

HVORDAN SVARENE ER STRUKTURERT

Endepunkter og forespørsler

Integration API-endepunktene er organisert etter ressurstype og følger den RESTful arkitektoniske stilen. Hvert endepunkt representerer en ressurs, og handlinger på disse ressursene utføres ved hjelp av standard HTTP-metoder.

Alle Integration API-forespørsler og svar er i JSON-format, og gir et konsistent og brukervennlig grensesnitt for interaksjon med API.

For fullstendige detaljer om hvert endepunkt, inkludert eksempler på forespørsler og svar, se vår Swagger-dokumentasjon.

Svarformat

Alle endepunkter returnerer data i et standardisert format med disse objektene:

{
  "links": {
    "self": "https://api.fabrixa.com/v2/integration/products",
    "first_page": "https://api.fabrixa.com/v2/integration/products?page=1",
    "last_page": "https://api.fabrixa.com/v2/integration/products?page=2",
    "next_page": "https://api.fabrixa.com/v2/integration/products?page=2",
    "prev_page": null
  },
  "meta": {
    "total": 2,
    "current_page": 1,
    "per_page": 10
  },
  "data": [
    {
      "id": 1,
      "name": "Product 1",
      "description": "Description of Product 1"
    },
    {
      "id": 2,
      "name": "Product 2",
      "description": "Description of Product 2"
    }
  ]
}

Beskrivelse av responsobjekter

links

Inneholder pagineringslenker for å navigere gjennom resultatene.

  • self — URL-en til gjeldende side.
  • first_page — URL-en til den første resultatsiden.
  • last_page — URL-en til den siste resultatsiden.
  • next_page — URL-en til neste side. null hvis det ikke er noen neste side.
  • prev_page — URL-en til forrige side. null hvis det ikke er noen forrige side.

meta

Inneholder metadata om svaret, for eksempel pagineringsinformasjon.

  • total — det totale antallet varer som er tilgjengelig på alle sider.
  • current_page — gjeldende sidenummer for resultatene.
  • per_page — antall elementer per side.

data

Hovedinnholdet i svaret. data varierer etter endepunkt - det kan være et enkelt objekt, for eksempel ett produkt, eller en rekke objekter, for eksempel en liste over produkter.

NÅR NOE GÅR FEIL

Feil og statuskoder

Alle API-forespørsler returnerer HTTP-statuskoder som gir innsikt i svaret.

400 Bad Request

Serveren kan ikke behandle forespørselen på grunn av valideringsfeil – manglende eller ugyldige parametere.

401 Unauthorized

Klienten har ikke oppgitt gyldig autentiseringslegitimasjon. Returneres også når tilgangstokenet er tilbakekalt.

403 Forbidden

Serveren avviste forespørselen på grunn av utilstrekkelige tilgangsrettigheter, vanligvis forårsaket av feil eller manglende tilgangstillatelser.

404 Not Found

Den forespurte ressursen ble ikke funnet på serveren.

429 Too Many Requests

Klienten har overskredet det tillatte antallet forespørsler i en gitt tidsramme. Se Prisgrenser.

5xx Errors

Det oppstod en intern serverfeil. Ta kontakt med Fabrixas kundestøtte med detaljer om den mislykkede forespørselen.

Error Response Body

Et eksempel på en feilsvartekst:

{
    "links": {
        "self": "https://api.fabrixa.com/v2/integration/ping"
    },
    "meta": [],
    "errors": {
        "messages": [
            "Application Key is not specified."
        ]
    }
}

errors inneholder detaljer om hva som mislyktes. messages-matrisen viser feilbeskrivelser. For en dårlig forespørsel vil du motta navnene på feltene som mislyktes i valideringen.

KJENN DINE FORESPØRSELSGRENSER

Satsgrenser

Integration API støtter en grense på 30 forespørsler per applikasjon per minutt.

Hvis du overskrider denne grensen vil du motta et 429 Too Many Requests svar.

Alle Integration API-svar inkluderer X-RateLimit-Remaining-headeren, hvor mange forespørsler klienten fortsatt kan gjøre, og X-RateLimit-Limit-headeren, totalt tillatt per minutt.

OPPRETT OG SPOR BESTILLINGER

Bestillinger

Opprett bestillinger i Fabrixa fra din egen butikkfront eller plattform, legg ved de nødvendige utskriftsfilene, og følg hver vare mens den beveger seg gjennom oppfyllelsen.

FORBERED DINE BESTILLINGSDATA

Opprett en ordre

For å opprette en ordre via Fabrixa Integration API, send en POST-forespørsel til https://api.fabrixa.com/v2/integration/orders. Forespørselsorganet må inneholde:

Be om kroppsstruktur

  • number (valgfritt) - ordrenummeret. Hvis det ikke oppgis, genereres et unikt nummer.
  • comments (valgfritt) - ekstra kommentarer eller merknader knyttet til ordren.
  • purchased_at - dato og klokkeslett for kjøpet, formatert som YYYY-MM-DD HH:MM:SS.
  • client_ip (valgfritt) - kundens IP-adresse.
  • client_user_agent (valgfritt) - kundens user-agent-streng.
  • rows - array med ordrelinjer, hver med:
    • sku - SKU for produktvarianten. Se Swagger for detaljer.
    • quantity - antall bestilte produktvarianter.
    • client_barcode (valgfritt) - unik klientidentifikator per ordrelinje, formatert som Code 128.
    • cart_item_key (påkrevd uten sources) - unik identifikator fra plattformen som bygger inn Fabrixa Studio, brukt til å knytte lagrede tilpasninger til ordren.
    • sources (påkrevd uten cart_item_key) - array med kildefiler knyttet til produktet, hver med:
      • type - produkttypen; bruk "file" som standard.
      • url - URL til kildefilen.
  • customer - kundeopplysninger:
    • first_name, last_name, email, phone.
  • shipping_address - leveringsopplysninger:
    • address, address2 (valgfritt), address3 (valgfritt).
    • city, country_code (ISO 3166-2), country, postal_code, state (valgfritt).
    • first_name, last_name, phone (valgfritt), company (valgfritt).
  • shipping_label (valgfritt) - etikettdetaljer:
    • method_name - f.eks. "Post NL".
    • tracking_number, tracking_url, label_pdf_url.
    • date_created - formatert som YYYY-MM-DD HH:MM:SS.

Eksempelforespørsel

{
  "number": "NL2024010201",
  "comments": "Customer agrees with a low resolution file.",
  "purchased_at": "2024-06-26 21:12:22",
  "client_ip": "127.0.0.1",
  "client_user_agent": "Mozilla",
  "rows": [
    {
      "variant_id": 2705,
      "quantity": 1,
      "client_barcode": "1234567890",
      "sources": [
        {
          "type": "file",
          "url": "https://samples-files.com/samples/sample.pdf"
        }
      ]
    }
  ],
  "customer": {
    "first_name": "John",
    "last_name": "Doe",
    "email": "3VJtP@example.com",
    "phone": "0647185332"
  },
  "shipping_address": {
    "address": "Pierre cuypershof",
    "address2": "17",
    "city": "Amsterdam",
    "country_code": "NL",
    "country": "Netherlands",
    "postal_code": "1012 AB",
    "state": "North Holland",
    "first_name": "John",
    "last_name": "Doe",
    "phone": "0647185332"
  },
  "shipping_label": {
    "method_name": "Post NL",
    "tracking_number": "3SYZXG1585577",
    "tracking_url": "https://postnl.nl/tracktrace/3SYZXG1585577",
    "label_pdf_url": "https://api.fabrixa.com/storage/8966630826422f36d822f91680012141.pdf",
    "date_created": "2024-01-01 00:00:00"
  }
}
SPOR DINE BESTILLINGSVARER

Sporoppfyllelse

For å få oppfyllelsesstatus for en spesifikk bestilling, send en GET-forespørsel til https://api.fabrixa.com/v2/integration/orders/{order_id}/fulfillments. Svaret gir en liste over oppfyllelser knyttet til bestillingen, inkludert hver varestatus, produktdetaljer og fremdrift i produksjonstrinn.

Eksempel på svar

{
    "data": [
        {
            "id": 1499,
            "barcode": "1200004169200",
            "status": "unfulfilled",
            "created_at": "2024-08-19T12:38:59.000000Z",
            "updated_at": "2024-08-19T12:39:00.000000Z",
            "variant": {
                "id": 32327,
                "name": "Test iAPI blanket product",
                "subtitle": "100 x 150 cm",
                "SKU": "COF099191"
            },
            "product": {
                "id": 1306,
                "name": "Test iAPI blanket product",
                "subtitle": "Test iAPI blanket product"
            },
            "production_steps": [
                {
                    "id": 5,
                    "name": "Print duvet",
                    "description": "Printing the duvet according to the specified design and dimensions.",
                    "status": {
                        "value": "pending",
                        "notes": null,
                        "updated_at": null
                    }
                },
                {
                    "id": 6,
                    "name": "Print pillow",
                    "description": "Printing the pillow cover with the assigned design.",
                    "status": {
                        "value": "pending",
                        "notes": null,
                        "updated_at": null
                    }
                }
            ]
        }
    ]
}

Svaret inkluderer en liste over oppfyllelser, som hver gir:

  • id - unik identifikator for oppfyllelsen.
  • barcode - strekkode for intern sporing og identifikasjon; kan også skrives ut på produktet.
  • status - gjeldende oppfyllelsesstatus: unfulfilled eller fulfilled.
  • created_at og __created_at og __created_at for fullføring oppdatering.
  • variant - detaljert informasjon om produktvarianten: navn, undertittel, SKU.
  • product - produktdetaljer: navn, undertittel.
  • production_steps - rekke produksjonstrinn. Listen over trinn avhenger av produkttypen. For hvert trinn:
    • id - unik identifikator for produksjonstrinnet.
    • name - f.eks. "Printdyne".
    • description - hva produksjonstrinnet innebærer.
    • status - gjeldende status:
      • venter - ikke ennå startet.
      • pågår - pågår for øyeblikket.
      • avvist - trinnet oppsto et problem og ble ikke fullført.
      • B__53____donFB__X5 har blitt fullført.
    • notes - eventuelle tilleggsmerknader knyttet til trinnet.
    • updated_at - forrige gang trinnstatusen ble oppdatert.
    • ____

Hver oppfyllelsespost tilsvarer et spesifikt produkt eller produktvariant i bestillingen, og hver kopi av produktet i bestillingen har sin egen oppfyllelsespost - hver vare spores individuelt gjennom hele produksjonen.

Hvis ingen oppfyllelser returneres for en bestilling, har bestillingen ennå ikke gått inn i behandlingsstadiet.

HVORDAN LEVERE DU UTSKRIFTSFILER

Krav til kildefil

Når du inkluderer kildefiler i bestillingen din, sørg for at de oppfyller følgende krav:

type

Du må oppgi en PDF-fil som kilde. Hvis designet inneholder flere produktlag, inkluderer du hvert lag som en separat side i samme PDF. Under behandlingen blir hver side behandlet som et individuelt lag, slik at du kan sende inn et flerlagsdesign som en enkelt kildefil. Se PDF-krav og siderekkefølge.

type i kildeobjektet må settes til "file".

"sources": [
    {
        "type": "file",
        "url": "https://samples-files.com/samples/source.pdf"
    }
]

For mer informasjon, se Swagger-dokumentasjonen.

url

Feltet url må inneholde en direkte lenke til kildefilen. Sørg for at URL-en er tilgjengelig og at filen kan lastes ned uten autentisering. Linken må forbli tilgjengelig gjennom hele produksjonsprosessen.

Filformat

Oppgi filer i PDF-format. Sørg for at bildene er av høy kvalitet og egnet for utskrift.

Bildedimensjoner

Maksimale dimensjoner er 15,000 pixels på hver side. Bilder som overskrider denne grensen kan endres eller avvises. Bildeoppløsningen bør samsvare med produktdimensjonene; ellers kan bilder endres eller beskjæres for å passe.

Oppløsning

Ingen spesifikt krav til oppløsning - bare sørg for at bildekvaliteten er tilstrekkelig for utskrift.

Fargerom

Bildene bør være i RGB fargerom for nøyaktig fargerepresentasjon. Andre fargerom vil bli konvertert under behandlingen, noe som kan resultere i feil farger.

Filstørrelse

Hver kildefil bør ikke overstige 50 MB. Større filer kan bli avvist eller forårsake behandlingsforsinkelser.

PDF-krav og siderekkefølge

Rekkefølgen på sidene i PDF-en er viktig. Sidene matches til produktlag etter posisjon, og forventet siderekkefølge avhenger av produkttypen. Sørg for at sidene i PDF-en din følger riktig lagsekvens for produktet du sender inn.

ProduktPDF-siderekkefølge
Duvet Cover
  1. Duvet cover
  2. Pillow front
  3. Pillow back
Curtains
  1. Left curtain
  2. Right curtain
T-shirt
  1. Front
  2. Back
  3. Left sleeve
  4. Right sleeve
  5. Collar
Tanktop
  1. Front
  2. Back
  3. Left sleeve
  4. Right sleeve
  5. Collar
Sweater
  1. Front
  2. Back
  3. Left sleeve
  4. Right sleeve
  5. Left cuff
  6. Right cuff
  7. Collar
  8. Waistband
Hoodie
  1. Front
  2. Back
  3. Left sleeve
  4. Right sleeve
  5. Left cuff
  6. Right cuff
  7. Hood inside left
  8. Hood inside right
  9. Hood outside left
  10. Hood outside right
  11. Waistband
  12. Pocket lower left
  13. Pocket lower right
  14. Pocket upper right
  15. Pocket upper left
Sweatpants
  1. Front right
  2. Front left
  3. Back left
  4. Back right
  5. Left cuff
  6. Right cuff
  7. Waistband
  8. Right pocket
  9. Left pocket
  10. Back pocket
  11. Back pocket interfacing
Sweatshorts
  1. Front right
  2. Front left
  3. Back left
  4. Back right
  5. Waistband
  6. Right pocket
  7. Left pocket

Viktig: hver PDF-side må samsvare med de nødvendige dimensjonene for sitt produktlag og være riktig orientert. Plasser kunstverket slik at toppen av designet er på linje med toppen av siden. Feil sidestørrelse eller -retning kan føre til problemer med skalering, rotasjon eller justering i produksjonen.

TILPASNING AV PRODUKT

Fabrixa Studio

Fabrixa Studio er et verktøy som lar brukere sømløst tilpasse og tilpasse produkter i sanntid med et intuitivt grensesnitt der brukere kan lage eller laste opp sine egne design.

Fabrixa Studio er ideell for bedrifter som tilbyr tilpassede produkter - slik at kunder kan visualisere designene sine før de fullfører bestillinger.

LEGG TIL STUDIO I BUTIKKEN DIN

Bygg inn Fabrixa Studio

Du kan bygge Fabrixa Studio inn på nettstedet ditt ved å bruke en iframe. Dette gjør at kundene dine kan tilpasse produkter direkte på nettstedet ditt under kassen.

Eksempel iframe for innebygging av Fabrixa Studio:

<iframe id="fabrixa-studio"
    src="https://studio.fabrixa.com?application_key={application_key}&sku={product_sku}&cart_item_key={cart_item_key}"
    name="FabrixaStudio"
    scrolling="no"
    frameborder="1"
    width="100%"
    height="100%"
    allowfullscreen="">
</iframe>

Erstatt verdiene for product_sku, cart_item_key og application_key med dine dynamiske verdier.

Forespørsel om å opprette en bestilling med cart_item_key

{
  "number": "NL2024010201",
  "purchased_at": "2024-06-26 21:12:22",
  "client_ip": "127.0.0.1",
  "client_user_agent": "Mozilla",
  "rows": [
    {
      "sku": "SB796162",
      "quantity": 1,
      "cart_item_key": "0cb76770-de2d-4524-aa48-47b6e5f0d8a5"
    }
  ],
  "customer": {
    "...": "..."
  },
  "shipping_address": {
    "...": "..."
  },
  "shipping_label": {
    "...": "..."
  }
}
LYTT ETTER KUNDES HANDLINGER

Håndtere studioarrangementer

Når knappen Legg til handlekurv klikkes inne i iframen, utføres følgende kommando:

window.parent.postMessage('customizationFinished', '*');

På samme måte, når Tilbake-knappen klikkes:

window.parent.postMessage('closeButtonClicked', '*');

postMessage-metoden letter kommunikasjon på tvers av opprinnelse mellom iframen og dets overordnede vindu, slik at den kan varsle forelderen om spesifikke brukerhandlinger.

Det første argumentet til postMessage er dataene du vil sende. Strengen 'customizationFinished' indikerer at brukeren har fullført tilpasningen og legger produktet i handlekurven. 'closeButtonClicked' indikerer at brukeren har valgt å gå tilbake.

I det overordnede vinduet, lytt etter disse meldingene ved å bruke message hendelseslytteren:

window.addEventListener('message', function(event) {
    if (event.origin === 'https://studio.fabrixa.com') {
        if (event.data === 'customizationFinished') {
            // Handle the Add to Cart event
            console.log('Customization finished and item can be added to cart.');
        } else if (event.data === 'closeButtonClicked') {
            // Handle the Back button event
            console.log('Back button clicked.');
        }
    }
});

Sjekk alltid origin for innkommende meldinger for å sikre at de kommer fra en pålitelig kilde. Avhengig av meldingen du mottar, utfør de nødvendige handlingene - oppdater brukergrensesnittet, behandle handlekurven, osv. Validering av origin er avgjørende for sikkerheten - det forhindrer uautoriserte skript fra å samhandle med applikasjonen din.

VIS FERDIG DESIGN

Forhåndsvisning av tilpasning

Etter at tilpasningen er fullført, viser du det endelige designet ved å bruke forhåndsvisningsadressen nedenfor. Denne nettadressen returnerer et bilde av det tilpassede produktet, egnet som src-verdien i en <img>-tag. Ideell for å vise det tilpassede produktet i handlekurven, bestillingssammendraget eller hvor som helst i butikkgrensesnittet.

https://api.fabrixa.com/v2/studio/customizations/{CART_ITEM_KEY}/preview?Application-Key={APPLICATION_KEY}

Erstatt {CART_ITEM_KEY} med den faktiske vognvarenøkkelen og {APPLICATION_KEY} med din gyldige programnøkkel.

Eksempelbruk i en bildekode:

<img
    src="https://api.fabrixa.com/v2/studio/customizations/{CART_ITEM_KEY}/preview?Application-Key={APPLICATION_KEY}"
    alt="Customized Product Preview"
    style="max-width: 100%; height: auto;" />
PRØV DET MED DINE VERDIER

Live Demo

Tilpasningsforhåndsvisningen vises her etter at designet er ferdig.

Customization preview
MOTA EVENTOPPDATERINGER

Webhooks

Webhooks brukes av Fabrixa for å varsle systemet ditt om sanntidshendelser - bestill oppdateringer eller kreasjoner. Når en hendelse inntreffer, sender Fabrixa en webhook til serveren din som inneholder relevant informasjon. Serveren din må avsløre et offentlig POST-endepunkt for å håndtere innkommende webhooks.

GJENNOMGÅ DINE INNKOMMENDE OVERSKIPPER

Webhook-forespørselshoder

Webhook-forespørselen inkluderer følgende overskrifter for å hjelpe deg med å identifisere og validere den innkommende forespørselen:

{
  "content-type": "application/json",
  "x-webhook-signature": "YmEwNjBhMGMyMzE3ZWQ5NGQ5NDYwOGVhNzNhMjQ4M2MyODZkZmI3NTQ1YzYxYjdkMzNhZjgzYzBmMTkxYTAxMw==",
  "x-webhook-topic": "order.updated"
}
Overskriftsoversikt
VELG EVENTSEMNER

Webhook-arrangementer

Fabrixa webhooks varsler systemet ditt om endringer i ordrestatus eller aktivitet. Hver webhook utløses av en spesifikk x-webhook-topic verdi. Emner som støttes for øyeblikket:

EmneBeskrivelse
order.created Utløses når en ny ordre legges inn i Fabrixa, enten via API-forespørsel eller direkte i plattformen.
order.updated Utløses når ordredetaljer som ordrestatus eller oppfyllelsesstatus oppdateres.

Ordrestatuser

Oppfyllelsesstatuser

KONTROLLER ARRANGEMENTETS NYTTELAST

Eksempel på webhook nyttelast

Et eksempel på nyttelasten sendt med webhook. Denne nyttelasten representerer en ordreoppdatering:

{
  "id": 23069,
  "number": "1250211835",
  "comments": null,
  "is_archived": false,
  "status": "imported",
  "fulfillment_status": "unfulfilled",
  "purchased_at": "2025-04-17T16:17:21.000000Z",
  "created_at": "2025-04-17T16:17:23.000000Z",
  "updated_at": "2025-04-18T07:43:52.000000Z",
  "rows": [
    {
      "id": 27954,
      "quantity": 1,
      "client_barcode": "1250211835",
      "fulfillment_status": "unfulfilled",
      "variant": {
        "id": 293457,
        "name": "Sherpa fleece deken",
        "subtitle": "100x150",
        "SKU": "SFD787231",
        "product": {
          "id": 5319,
          "name": "Sherpa fleece deken",
          "subtitle": "Sherpa fleece deken"
        }
      },
      "sources": [
        {
          "type": "print",
          "url": "https://storage.googleapis.com/fabrixa-api/storage/99b10aaa-df4d-47e4-9bc9-b1d6a785df4c/orders/merchandise-sources/120002795400.pdf",
          "properties": {
            "fill_style": "contain"
          }
        }
      ]
    }
  ]
}
BEKREFT WEBHOOK-KILDEN

Bekreft Webhook-signaturer

For å sikre at webhook-forespørselen er autentisk og umanipulert, kontroller x-webhook-signature-overskriften. Dette innebærer å beregne HMAC-SHA256-signaturen på nytt ved å bruke den rå forespørselsnyttelasten og din hemmelige nøkkel, og deretter sammenligne den med den mottatte signaturen.

Eksempel på rå PHP

$payload = file_get_contents('php://input');
$yourSecret = 'your-secret-key';
$expectedSignature = base64_encode(hash_hmac('sha256', $payload, $yourSecret, true));
$receivedSignature = $_SERVER['HTTP_X_WEBHOOK_SIGNATURE'] ?? '';

if (!hash_equals($expectedSignature, $receivedSignature)) {
    http_response_code(403);
    exit('Invalid signature');
}

Laravel eksempel

public function handle(Request $request)
{
    $yourSecret = 'your-secret-key';
    $payload = $request->getContent();
    $expectedSignature = base64_encode(hash_hmac('sha256', $payload, $yourSecret, true));
    $receivedSignature = $request->header('x-webhook-signature');

    if (!hash_equals($expectedSignature, $receivedSignature)) {
        abort(403, 'Invalid signature');
    }

    // Continue processing...
}

Erstatt $yourSecret med din delte hemmelige nøkkel. Bruk alltid hash_equals for å sammenligne signaturer for å redusere timingangrep.

HVA HVIS LEVERINGEN MISLYKKES?

Webhook prøver på nytt

Webhooks er som standard deaktivert etter 10 mislykkede leveringsforsøk. Hvis endepunktet ditt returnerer en mislykket status som 404 eller en hvilken som helst 5xx-feil, vil webhook-en prøve på nytt i totalt 10 ganger. Hvis den fortsetter å returnere en ikke-2xx eller ikke-3xx svarkode, vil den bli deaktivert. Vellykkede svar inkluderer:

RETUR ET KLART SVAR

Webhook-svar

Vi anbefaler på det sterkeste at endepunktet ditt returnerer en 200 OK statuskode så raskt som mulig for å bekrefte vellykket mottak av webhook. Mens ethvert 2xx eller 3xx svar anses som vellykket, er 200 den mest brukte og pålitelige.

For å unngå leveringstidsavbrudd eller gjenforsøk, returner 200 OK umiddelbart og håndtere webhook-nyttelastbehandling asynkront, for eksempel via en bakgrunnsjobb eller kø. Hvis endepunktet ditt tar for lang tid å svare, kan det betraktes som en feil selv om svaret til slutt er vellykket.

Svar med statuskoder i området 4xx eller 5xx, eller tidsavbrudd, vil utløse gjenforsøk i henhold til prøvemekanismen.