REST API

Snelstart

Maak links direct aan en haal daarna een batch op met curl.

1. Toegangsgegevens verkrijgen

Maak een persoonlijke API-sleutel onder Account → Verwijzingen → API-sleutels. Kopieer hem wanneer hij verschijnt en geef hem als NINJABUY_API_KEY aan je script door; houd hem geheim.

Gebruik OAuth voor een toepassing die namens andere NinjaBuy-klanten handelt.

curl -sS https://www.ninjabuy.com/api/v1/links \
  -H "Authorization: Bearer $NINJABUY_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{"links":["https://weidian.com/item.html?itemID=7581746714"],"campaign":"spring-haul","label":"video 3"}'

Tot 100 invoerwaarden krijg je 200 met results, warnings en request_id. Elk resultaat heeft een input en status; een ok-resultaat bevat de toegeschreven url en code. Controleer elke rij: HTTP-succes betekent niet dat elke invoerwaarde is omgezet. Zie Links.

3. Een batch starten

Meer dan 100 invoerwaarden worden automatisch op de achtergrond verwerkt, tot 2.000 per aanvraag. Wil je een taak met één link proberen, zet async dan op true:

curl -sS -D batch-headers.txt https://www.ninjabuy.com/api/v1/links \
  -H "Authorization: Bearer $NINJABUY_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{"links":["https://www.ninjabuy.com/search?q=hoodie"],"async":true}'

Het antwoord is 202. Location geeft een relatief pad zoals /api/v1/jobs/JOB_ID; Retry-After: 5 geeft aan wanneer je opnieuw moet opvragen. De body bevat job.id, job.status, job.total en job.poll_after_seconds.

4. Resultaten per cursor lezen

Gebruik de taak-ID uit dat antwoord. Laat cursor bij de eerste aanvraag weg:

curl -sS "https://www.ninjabuy.com/api/v1/jobs/JOB_ID" \
  -H "Authorization: Bearer $NINJABUY_API_KEY"

Geef bij elke volgende aanvraag de geretourneerde cursor ongewijzigd door als deze niet null is:

curl -sS "https://www.ninjabuy.com/api/v1/jobs/JOB_ID?cursor=RETURNED_CURSOR" \
  -H "Authorization: Bearer $NINJABUY_API_KEY"

Lees de results van elke pagina. Haal de volgende pagina op als has_more true is. Als deze false is maar de taak queued of running is, wacht dan poll_after_seconds en vraag opnieuw op met de bewaarde cursor. Stop zodra de taak done of failed is en alle pagina's zijn verwerkt. Zie Taken en Fouten.

Volgende stappen

Zet een Google-spreadsheet of geüpload XLSX-/CSV-bestand om met Spreadsheets, of vind producten met Zoeken.