B2B-documentatie

B2B API – bestel- en productinformatie geautomatiseerd ophalen

Onze REST-API staat ter beschikking van elke klant met een klantaccount en maakt het mogelijk om bestel- en productinformatie geautomatiseerd op te halen en in eigen systemen te integreren.

Authenticatie

Alle API-aanvragen vereisen een geldige API-key die in de HTTP-header wordt meegestuurd. De API-toegang is gekoppeld aan uw klantaccount en staat klantaccounts in principe ter beschikking.

info U heeft geen aparte B2B-aanvraag nodig: meld u aan met uw klantaccount, open het API-tabblad en genereer daar uw API-key. Naar de API-toegang →

Header-formaat

HTTP Request Header
X-API-Key: YOUR_API_KEY_HERE
Content-Type: application/json
Accept: application/json

Voorbeeld met cURL

cURL
curl -X GET "https://artumos.com/api/v1/orders" \
  -H "X-API-Key: YOUR_API_KEY_HERE" \
  -H "Accept: application/json"

Base URL

Alle endpoints zijn relatief ten opzichte van de volgende Base URL:

Base URL
https://artumos.com/api/v1

Alle antwoorden worden als JSON teruggegeven (Content-Type: application/json).

Rate Limits

PlanAanvragen / minuutAanvragen / dag
Klantaccount605.000
Uitgebreide limietop aanvraagop aanvraag

Bij overschrijding wordt HTTP 429 Too Many Requests teruggegeven. De header Retry-After bevat de wachttijd in seconden.

Foutcodes

HTTP-CodeBetekenis
200 OKAanvraag geslaagd
400 Bad RequestOngeldige parameters
401 UnauthorizedOntbrekende of ongeldige API-key
403 ForbiddenGeen toestemming voor deze resource
404 Not FoundResource niet gevonden
429 Too Many RequestsRate Limit overschreden
500 Internal Server ErrorServerfout – neem contact op met support

Fout-response formaat

JSON
{
  "success": false,
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Invalid or missing API key."
  }
}

Endpoint: bestellingen

GET /api/v1/orders Alle bestellingen van het account
ParameterTypeBeschrijving
pageintegerPagina (standaard: 1)
per_pageintegerItems per pagina (max. 100)
statusstringpaid | pending | all
Beispiel-Response
{
  "success": true,
  "data": {
    "orders": [
      {
        "id": "ORD-12345",
        "status": "paid",
        "total": 49.99,
        "currency": "EUR",
        "created_at": "2026-01-15T10:30:00Z",
        "items_count": 2
      }
    ],
    "pagination": {
      "page": 1,
      "per_page": 20,
      "total": 42
    }
  }
}
GET /api/v1/orders/{order_id} Enkele bestelling ophalen

Endpoint: product- en bestelinformatie

GET /api/v1/orders/{order_id}/codes Alle productinformatie van een bestelling
Beispiel-Response
{
  "success": true,
  "data": {
    "order_id": "ORD-12345",
    "codes": [
      {
        "id": "CODE-789",
        "product_name": "Beispielprodukt vom Marktplatz",
        "product_sku": "ART-PRODUCT-001",
        "product_info": "Hinweise laut Verkäuferangaben",
        "delivery_url": "https://...",
        "delivered_at": "2026-01-15T10:31:00Z",
        "status": "active"
      }
    ]
  }
}
GET /api/v1/codes/{code_id} Enkele productinformatie ophalen
warning Product- en bestelinformatie mag alleen worden gebruikt in het kader van de betreffende bestelling en verkopersgegevens. Een onrechtmatige verspreiding kan in strijd zijn met de gebruiksvoorwaarden.

Endpoint: producten

GET /api/v1/products Productcatalogus ophalen
ParameterTypeBeschrijving
categorystringCategorie-slug filteren
in_stockbooleanAlleen beschikbare producten
pageintegerPagina
Beispiel-Response
{
  "success": true,
  "data": {
    "products": [
      {
        "id": 42,
        "sku": "ART-PRODUCT-001",
        "name": "Beispielprodukt vom Marktplatz",
        "price": 49.99,
        "currency": "EUR",
        "in_stock": true,
        "category": "handmade"
      }
    ]
  }
}

Webhooks

Webhooks maken het mogelijk om realtime-meldingen te ontvangen wanneer bestellingen of codes beschikbaar worden gesteld. Webhook-URL's kunnen in het klantaccount worden vastgelegd.

Beschikbare events

EventBeschrijving
order.paidBestelling is betaald
codes.deliveredCodes zijn beschikbaar gesteld
order.refundedBestelling is terugbetaald

Webhook Payload

POST – Uw Webhook-endpoint
{
  "event": "codes.delivered",
  "timestamp": "2026-01-15T10:31:05Z",
  "data": {
    "order_id": "ORD-12345",
    "codes_count": 2
  },
  "signature": "sha256=..."
}

Verifieer de handtekening met uw Webhook-secret: HMAC-SHA256(payload, webhook_secret)

Veelgestelde vragen

Wie kan de B2B API gebruiken?

Elke klant met een klantaccount kan de API-toegang gebruiken. Meld u aan in uw klantaccount en gebruik de bijbehorende API-key voor geauthenticeerde aanvragen.

Welk formaat hebben de antwoorden?

Alle antwoorden worden als JSON teruggegeven. Het root-object bevat altijd success: true/false evenals ofwel data of error.

Kan ik bestellingen via de API plaatsen?

In de eerste versie dient de API voor het ophalen van bestellingen, bestel- en productinformatie. Schrijvende bestel-endpoints worden apart vrijgeschakeld zodra ze beschikbaar zijn.

Is er een sandbox-omgeving?

Ja. De sandbox kan in het klantaccount in het tabblad „API-toegang“ worden geactiveerd en is direct aan de betreffende API-key gekoppeld.