OCS Recreatie API (2.0.1)

Download OpenAPI specification:

Blink Digital: [email protected] License: Proprietary

Attributes

Retrieve information about attributes

List Attributes

Get a list of all attributes

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Brands

Retrieve information about brands.

Get list of brands

Retrieve a list of all distinct brand names available in the product catalog.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • "Thule"
]

Get products by brand

Retrieve a list of product SKUs associated with the specified brand.

Authorizations:
basic_auth
path Parameters
brand
required
string
Example: Thule

The brand name to filter products by.

Responses

Response samples

Content type
application/json
[
  • "SKU12345"
]

Category

Everything related to Category information

Get Category

Get a single category by its code/id.

Authorizations:
basic_auth
path Parameters
category
required
string
Example: WasteBins

The category code/id to retrieve

Responses

Response samples

Content type
application/json
{
  • "id": "Electricity",
  • "code": "Electricity",
  • "title": "Electricity",
  • "level": 1,
  • "path": "20001,20002",
  • "path_new": "Electricity,SpareParts",
  • "is_group": false,
  • "media": [],
  • "children": [
    ]
}

Get Categories

Get all categories in a tree structure.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Categories (b2c alias)

Alias of GET /categories/b2b — identical response.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Flat Categories

Get all categories in a flat structure.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Flat Categories (alias)

Alias of GET /categories/b2b/flat — identical response.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Flat Categories (b2c alias)

Alias of GET /categories/b2b/flat — identical response.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Universal Categories

Get all categories in a tree structure with only titles.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Companies

Retrieve information about companies.

List all companies

Retrieve a paginated list of all companies (customers). Requires appropriate permissions to access.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "links": { },
  • "meta": { }
}

Get company details

Retrieve detailed information about a specific company (customer) by its ID. Requires appropriate permissions to access.

Authorizations:
basic_auth
path Parameters
company
required
string
Example: EA00001

The ID of the company to retrieve

Responses

Response samples

Content type
application/json
{
  • "code": "EA00001",
  • "name": "Acme Corporation",
  • "email": "[email protected]",
  • "address": {
    }
}

Features

Retrieve information about features.

Get list of features

Retrieve a list of all available features in the system.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get enabled features for user

Retrieve a list of features enabled for the authenticated user.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • "product.list"
]

Orders

Everything related to orders

Order list

Get list of orders

Authorizations:
basic_auth
query Parameters
customer_id
string

Filter orders by customer ID (only for users with permission)

status
Array of strings
Items Enum: "error" "processing" "in-m3" "m3-error" "shipping-error" "shipped" "canceled" "complete"

Filter orders by status (array of statuses)

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "links": { },
  • "meta": { }
}

Create order

Create a new order

Authorizations:
basic_auth
Request Body schema: application/json
required
reference
string <= 50 characters

Reference for the order (max 50 characters)

notes
string

Additional notes for the order

test
boolean

Indicates if this is a test order

m3_test
boolean or null

Marks the order as a test order in M3 (separate from the general "test" flag)

m3_operation
string or null
Enum: "read" "write"

M3 operation mode for the order

dropshipment
boolean
Default: true

Whether the order should be dropshipped. Defaults to true when omitted.

customercode
string

Customer code to place the order for (if different from the authenticated user)

required
object

Shipping details for the order

required
Array of objects

List of products to include in the order

Responses

Request samples

Content type
application/json
{
  • "reference": "Order from trade show",
  • "notes": "Please deliver between 9 AM and 5 PM.",
  • "test": false,
  • "m3_test": false,
  • "m3_operation": "read",
  • "dropshipment": true,
  • "customercode": "EA00001",
  • "shipping": {
    },
  • "products": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    },
}

Order details

Get details of a specific order by ID

Authorizations:
basic_auth
path Parameters
order
required
integer
Example: 12345

The ID of the order to retrieve

Responses

Response samples

Content type
application/json
{
  • "id": 12345,
  • "updated_at": {
    },
  • "status": "pending",
  • "creator_name": "John Doe",
  • "customer": {
    },
  • "dropship": true,
  • "vat": "NL123456789B01",
  • "company": "Acme Corporation",
  • "reference": "PO123456",
  • "notes": "string",
  • "BillingAddress": null,
  • "shippingAddress": {
    },
  • "products": [
    ],
  • "shipments": [
    ]
}

Order status

Get current status of a specific order by ID

Authorizations:
basic_auth
path Parameters
order
required
integer
Example: 12345

The ID of the order to retrieve status for

query Parameters
output
string
Enum: "text" "json"
Example: output=json

Output format, either "text" (default for compatibility reasons) or "json"

Responses

Response samples

Content type
application/json
Example
"processing"

Order statuses

Get list of possible order statuses

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
{
  • "processing": "Processing",
  • "error": "Error occurred during processing",
  • "in-m3": "Order successfully sent to M3",
  • "m3-error": "Received error from M3 during processing",
  • "shipping-error": "Creation of shipment label in Transsmart failed",
  • "shipped": "Order sent to shipping provider",
  • "canceled": "Order canceled",
  • "complete": "Order complete (used for test orders only)"
}

Dropship delivery costs

Get list of dropship delivery costs

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Product

Everything related to Product information

Product list

Get list of product skus

Requires PRODUCT_LIST feature to access

Note that GET /product/{product}, GET /product/basic/{product}, and GET /product/barcode/{barcode} do NOT exclude these products — they instead surface via the blocked field.

Authorizations:
basic_auth
query Parameters
category
string

Filter based on category

update_count
integer

The minimum changeset count a product needs to be on to be listed.

Products that do not meet this requirement are excluded from the result.

modified_since
string <date-time>
Example: modified_since=2025-01-01 00:00

Only return products that have been changed since this date

barcode
string
Example: barcode=2000120302310,8003507220133

Return products that have the specified barcodes, comma separated

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Product Details

Get detailed product information

Authorizations:
basic_auth
path Parameters
product
required
string
Example: 0108001

The SKU of the product to retrieve

Responses

Response samples

Content type
application/json
{
  • "sku": "AO234324",
  • "ocsid": "AO234324",
  • "vendor_item_no": "12345",
  • "expiring": false,
  • "last_modified": {
    },
  • "update_count": 1,
  • "blister": false,
  • "consumer": false,
  • "blocked": false,
  • "barcode": {},
  • "stock": 2,
  • "stock-colour": "green",
  • "stock-expected": "lte_30",
  • "stock-absolute": 12,
  • "dropshipment": {
    },
  • "customs": {
    },
  • "categories-b2b": {
    },
  • "categories-b2c": {
    },
  • "prices": [
    ],
  • "price_unit": "piece",
  • "sales_unit": "box",
  • "sales_unit_amount": 10,
  • "files": [],
  • "attributes": [
    ],
  • "media": []
}

Get Product by Barcode

Get product by barcode

Authorizations:
basic_auth
path Parameters
barcode
required
string
Example: 2000120302310

The EAN13 barcode of the product to retrieve.

Responses

Response samples

Content type
application/json
{
  • "sku": "AO234324",
  • "ocsid": "AO234324",
  • "vendor_item_no": "12345",
  • "expiring": false,
  • "last_modified": {
    },
  • "update_count": 1,
  • "blister": false,
  • "consumer": false,
  • "blocked": false,
  • "barcode": {},
  • "stock": 2,
  • "stock-colour": "green",
  • "stock-expected": "lte_30",
  • "stock-absolute": 12,
  • "dropshipment": {
    },
  • "customs": {
    },
  • "categories-b2b": {
    },
  • "categories-b2c": {
    },
  • "prices": [
    ],
  • "price_unit": "piece",
  • "sales_unit": "box",
  • "sales_unit_amount": 10,
  • "files": [],
  • "attributes": [
    ],
  • "media": []
}

Get Basic Product Information Deprecated

Get basic product information for all products.

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Basic Product Information for a Product Deprecated

Get basic product information for a specific product

Authorizations:
basic_auth

Responses

Response samples

Content type
application/json
{
  • "sku": "SKU12345",
  • "title": "Sample Product Title"
}

Stock

Retrieve stock information about products

Get color-based stock availability

Retrieve stock availability for products in color format, where "red" = out of stock and "green" = in stock. You can choose between a flat or nested list format. Optionally, filter results by modifications since a specific date.

Authorizations:
basic_auth
query Parameters
listtype
string
Default: "nested"
Enum: "flat" "nested"

Choose between "flat" and "nested" list types. Default is "nested".

modified_since
string <date-time>

If set, only stock modifications since the given date (in ISO 8601 format) are returned.

Responses

Response samples

Content type
application/json
Example
[
  • {
    },
  • {
    },
  • {
    }
]

Get numeric stock availability

Retrieve stock availability for products in numeric format, where 0 = out of stock and 2 = in stock. You can choose between a flat or nested list format. Optionally, filter results by modifications since a specific date.

Authorizations:
basic_auth
query Parameters
listtype
string
Default: "nested"
Enum: "flat" "nested"

Choose between "flat" and "nested" list types. Default is "nested".

modified_since
string <date-time>

If set, only stock modifications since the given date (in ISO 8601 format) are returned.

Responses

Response samples

Content type
application/json
Example
[
  • {
    },
  • {
    },
  • {
    }
]

Get absolute stock availability [DEPRECATED] Deprecated

Endpoint was previously used to retrieve absolute stock availability for products, where the value represents the exact number of items in stock.

Authorizations:
basic_auth
query Parameters
listtype
string
Default: "nested"
Enum: "flat" "nested"

Choose between "flat" and "nested" list types. Default is "nested".

modified_since
string <date-time>

If set, only stock modifications since the given date (in ISO 8601 format) are returned.

Responses

Response samples

Content type
application/json
Example
[
  • {
    },
  • {
    },
  • {
    }
]

Media

Retrieve product and category media files

Get Barcode Image

Get the barcode image for a product

Authorizations:
basic_auth
path Parameters
sku
required
string
Example: 0108001

The SKU of the product to retrieve the barcode image for

Responses

Get Product Image

Get a product image by its sequence index

Authorizations:
basic_auth
path Parameters
product
required
string
Example: 0108001

The SKU of the product to retrieve the image for

index
required
integer
Example: 1

The sequence index of the image, as returned by the product media list

Responses

Get Product File

Get a product file (e.g. datasheet, manual) by its sequence index

Authorizations:
basic_auth
path Parameters
product
required
string
Example: 0108001

The SKU of the product to retrieve the file for

index
required
integer
Example: 1

The sequence index of the file, as returned by the product media list

Responses

Get Canonical Media

Get a media file by its canonical hash. Falls back to legacy media storage if not found in the current media library.

Authorizations:
basic_auth
path Parameters
sha1
required
string
Example: a1b2c3d4e5f67890123456789abcdef0.jpg

The SHA1 hash of the media file, optionally with a file extension (e.g. "abc123.jpg")

Responses