Ideal House
Naar inhoud gaan

Foutantwoorden#

HTTP-statusBetekenisAanbevolen actie
400 Bad RequestDe aanvraagtekst of queryparameters zijn ongeldig.Corrigeer het verzoek voordat u het opnieuw probeert.
401 UnauthorizedInloggegevens ontbreken, zijn ongeldig, verlopen of niet actief.Controleer de authenticatieheaders of neem contact op met Ideal House.
403 ForbiddenDe aangevraagde shopId is niet aan de toegangsgegevens gekoppeld.Gebruik de Shop ID die aan deze toegangsgegevens is toegewezen.
404 Not FoundEr is geen importstatus of overeenkomend product beschikbaar.Controleer de Shop ID en de aangevraagde product-ID of SKU.
409 ConflictEr is al een andere importtaak actief voor de winkel.Wacht tot de huidige importtaak is voltooid.
429 Too Many RequestsEr worden te veel verzoeken per tijdseenheid verstuurd.Probeer het opnieuw met een exponentieel toenemende wachttijd en een willekeurige extra vertraging.
500 Internal Server ErrorDe dienst heeft een onverwachte fout aangetroffen.Probeer het opnieuw met een exponentieel toenemende wachttijd. Neem contact op met Ideal House als de fout aanhoudt.
502 Bad Gateway of 503 Service UnavailableDe API is tijdelijk niet beschikbaar.Probeer opnieuw met een exponentieel toenemende wachttijd.

Een validatiefout kan de volgende indeling hebben:

json
{
  "message": ["shopId should not be empty"],
  "error": "Bad Request",
  "statusCode": 400
}

De tekst in message kan variëren. Baseer de programmalogica op de HTTP-statuscode en de gedocumenteerde antwoordvelden.

Richtlijnen voor opnieuw proberen en herstel#

  • Vraag de status elke 2 tot 5 seconden op zolang de taak pending of running is.
  • Gebruik bij antwoorden met 429, 500, 502 en 503 een exponentieel toenemende wachttijd met een willekeurige extra vertraging. Stel ook een maximumaantal pogingen in.
  • Herhaal verzoeken die 400, 401 of 403 retourneren niet automatisch zonder eerst het verzoek of de toegangsgegevens te corrigeren.
  • Wacht na 409 totdat de actieve taak de status completed of failed bereikt.
  • Als er een time-out optreedt bij het indienen voordat u een antwoord ontvangt, vraagt u het statuseindpunt op voordat u de batch opnieuw verzendt.
  • Hetzelfde product opnieuw indienen met dezelfde SKU is veilig, omdat een import het product aanmaakt of bijwerkt.
  • Na een voltooide taak met fouten op artikelniveau dient u een nieuwe batch in die alleen de mislukte producten bevat.
  • Na een fout op taakniveau kunnen de producten die in successCount zijn meegeteld al zijn bijgewerkt. De oorspronkelijke batch opnieuw indienen met dezelfde SKU's is veilig.
  • De verwijdering kan al zijn uitgevoerd, ook als het verzoek 503 retourneert. Hetzelfde verwijderverzoek kan veilig worden herhaald.

Het statuseindpunt dient om de actieve of meest recente taak te volgen, niet om een blijvende importgeschiedenis op te slaan. Bewaar de ingediende batch, jobId, statusantwoorden en het eindresultaat in uw eigen systeem voor gegevenscontrole en ondersteuning.

Productiechecklist#

  • Bewaar Client Secret in een geheimenbeheerder of een beveiligde serveromgeving.
  • Gebruik voor elk product een stabiele, unieke SKU.
  • Verstuur niet meer dan 500 producten per aanvraag.
  • Zorg dat de URL's van afbeeldingen openbaar bereikbaar zijn en gedurende de verwerking beschikbaar blijven.
  • Stel processImages: true alleen expliciet in wanneer beeldvoorbewerking nodig is en de verwerkingskosten van 1 credit per afbeelding worden geaccepteerd. Laat het veld anders weg of stel het in op false.
  • Schakel het opsplitsen van vloerafbeeldingen alleen in door zowel processImages als processFloorImages op true te zetten.
  • Geef voor elk product name, imageUrl, productUrl, width, height en een ondersteunde productType op.
  • Als u status opgeeft, stelt u deze in op active, inactive, out_of_stock of invalid.
  • Stuur afmetingen als positieve waarden met een ondersteunde eenheid, of laat de eenheid weg om inches te gebruiken; opgeslagen waarden worden naar inches omgerekend.
  • Sla de geretourneerde jobId blijvend op en vergelijk deze met latere statusantwoorden.
  • Behandel completed met failedCount > 0 als een gedeeltelijk succes.
  • Pagineer door de productlijst in plaats van een onbegrensde catalogus aan te vragen.
  • Geef voor verwijderingen precies één van productId of sku op.
  • Beperk het aantal nieuwe pogingen en gebruik een exponentieel toenemende wachttijd met een willekeurige extra vertraging.

Neem voor toegangsgegevens, waarden uit het aansluitproces, de toewijzing van producttypen of aanhoudende integratieproblemen contact op met uw integratiecontactpersoon bij Ideal House.