Corenio api

Collegare il software a Corenio.

Costruire il proprio webshop, app o integrazione utilizzando i dati Corenio. Leggere prodotti e stock, gestire carrelli e recuperare gli ordini attraverso il API.

Webshop · App · ERPCorenio
HTTPSJSONAPI v1.0
I vostri sistemi, gli stessi dati.
Avvio rapido

Dall'idea alla tua prima integrazione.

01

Definire il flusso di lavoro

Scegliere quali dati scambiare e quale applicazione è la fonte. Inizia con le informazioni di prodotto e stock, per esempio.

02

Richiesta API accesso

Discutere l'accesso e i moduli di cui hai bisogno per l'integrazione con Corenio.

03

Leggi, verifica e espandi

Controllare i dati e la gestione degli errori restituiti prima di attivare flussi di lavoro che cambiano i dati.

Accesso

Una connessione sicura inizia con l'accesso.

La documentazione descrive un'intestazione chiave API e un token Bearer. L'autenticazione di cui hai bisogno dipende dall'endpoint e dal tuo accesso.

Discutere l'integrazione API
Server e intestazioni
https://api.corenio.com

api-key: YOUR_API_KEY
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

Tenere i tasti sul server. Non posizionarli in codice di frontend pubblico, URL o registri.

Esempi

La tua prima richiesta: controlla il magazzino.

Sostituisci TUOSKU con un prodotto esistente COD e TUA_API_KEY con la chiave. La rotta stock supporta id, ean e sku come tipi.

Il codice viene visualizzato e copiato solo. Questo sito non esegue API richieste.

curl --request GET \
  "https://api.corenio.com/api/v1.0/products/stock/YOURSKU?type=sku" \
  --header "api-key: YOUR_API_KEY" \
  --header "Accept: application/json"
API riferimento

30 operazioni, tutte in un unico posto.

Cercare un endpoint e aprirne i dettagli. I nomi dei campi, gli schemi e i valori dell'esempio tecnico seguono le specifiche OpenAPI originali.

GETElenco prodotti del carrello/api/v1.0/carts/{cart_id}/items/list
Carts

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
cart_idpathintegerObbligatorio
limitqueryintegerOpzionale
pagequeryintegerOpzionale
Visualizza lo schema
[
  {
    "name": "cart_id",
    "in": "path",
    "description": "ID of the cart whose items should be returned.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 19403076
    }
  },
  {
    "name": "limit",
    "in": "query",
    "description": "Maximum number of items returned per page.",
    "required": false,
    "schema": {
      "type": "integer",
      "default": 10,
      "maximum": 30,
      "minimum": 1,
      "example": 10
    }
  },
  {
    "name": "page",
    "in": "query",
    "description": "Page number to return.",
    "required": false,
    "schema": {
      "type": "integer",
      "default": 1,
      "minimum": 1,
      "example": 1
    }
  }
]

Risposte

200400401404
Visualizza lo schema
{
  "200": {
    "description": "Cart items successfully retrieved.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "cart_items",
            "total_items",
            "pages",
            "items_per_page",
            "current_page",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "cart_items": {
              "description": "Cart item collection keyed by cart item ID.",
              "type": "object",
              "additionalProperties": {
                "required": [
                  "item_id",
                  "quantity"
                ],
                "properties": {
                  "item_id": {
                    "description": "Unique ID of the cart item.",
                    "type": "integer",
                    "example": 1508
                  },
                  "quantity": {
                    "description": "Quantity of the item in the cart.",
                    "type": "integer",
                    "minimum": 1,
                    "example": 3
                  }
                },
                "type": "object"
              }
            },
            "total_items": {
              "type": "integer",
              "example": 3
            },
            "pages": {
              "type": "integer",
              "example": 1
            },
            "items_per_page": {
              "type": "integer",
              "example": 10
            },
            "current_page": {
              "type": "integer",
              "example": 1
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "Invalid cart ID or pagination parameters."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The cart was not found or contains no items."
  }
}
POSTAggiungi un articolo carrello/api/v1.0/carts/{cart_id}/items
Carts

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
cart_idpathintegerObbligatorio
Visualizza lo schema
[
  {
    "name": "cart_id",
    "in": "path",
    "description": "ID of the cart to which the item will be added.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 19403076
    }
  }
]

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "description": "Product and quantity to add to the cart.",
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "product_id",
          "quantity"
        ],
        "properties": {
          "product_id": {
            "description": "ID of the product to add.",
            "type": "integer",
            "example": 48291
          },
          "quantity": {
            "description": "Quantity to add. Must be between 1 and the maximum allowed item quantity.",
            "type": "integer",
            "default": 1,
            "minimum": 1,
            "example": 2
          },
          "configuration_id": {
            "description": "Optional ID of the selected product configuration.",
            "type": "integer",
            "example": 125,
            "nullable": true
          },
          "user_input": {
            "description": "Optional product configuration input supplied by the user.",
            "type": "object",
            "example": {
              "engraving": "Example",
              "color": "black"
            },
            "nullable": true,
            "additionalProperties": {}
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

201400401404
Visualizza lo schema
{
  "201": {
    "description": "Cart item successfully created.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "item_id",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "item_id": {
              "description": "ID of the newly created cart item.",
              "type": "integer",
              "example": 1508
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "The product_id, quantity, configuration_id, or user_input field is invalid."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The cart or product was not found."
  }
}
DELETERimuovi il carrello/api/v1.0/carts/{cart_id}/items
Carts

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
cart_idpathintegerObbligatorio
Visualizza lo schema
[
  {
    "name": "cart_id",
    "in": "path",
    "description": "ID of the cart.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 19403076
    }
  }
]

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "description": "An array containing the IDs of the cart items to remove.",
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "cartitem_ids"
        ],
        "properties": {
          "cartitem_ids": {
            "description": "Cart item IDs to remove. At least one ID is required.",
            "type": "array",
            "items": {
              "type": "integer"
            },
            "minItems": 1,
            "uniqueItems": true,
            "example": [
              1508,
              1509,
              1512
            ]
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400401404
Visualizza lo schema
{
  "200": {
    "description": "Cart items successfully removed.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "removed",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "removed": {
              "description": "IDs of the cart items that were successfully removed.",
              "type": "array",
              "items": {
                "type": "integer"
              },
              "example": [
                1508,
                1509,
                1512
              ]
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "The cartitem_ids field is missing, empty, or invalid."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The cart was not found or none of the specified cart items were found."
  }
}
PATCHQuantità di aggiornamento/api/v1.0/carts/{cart_id}/items/{cartitem_id}
Carts

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
cart_idpathintegerObbligatorio
cartitem_idpathintegerObbligatorio
Visualizza lo schema
[
  {
    "name": "cart_id",
    "in": "path",
    "description": "ID of the cart.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 19403076
    }
  },
  {
    "name": "cartitem_id",
    "in": "path",
    "description": "ID of the item in the cart.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 1508
    }
  }
]

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "description": "The new quantity for the cart item.",
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "quantity"
        ],
        "properties": {
          "quantity": {
            "description": "New quantity for the cart item. Must be between 1 and the maximum allowed item quantity.",
            "type": "integer",
            "minimum": 1,
            "example": 3
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400401404
Visualizza lo schema
{
  "200": {
    "description": "Cart item quantity successfully updated.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "cart_id",
            "cartitem_id",
            "new_quantity",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "cart_id": {
              "description": "ID of the updated cart.",
              "type": "integer",
              "example": 19403076
            },
            "cartitem_id": {
              "description": "ID of the updated cart item.",
              "type": "integer",
              "example": 1508
            },
            "new_quantity": {
              "description": "The updated quantity of the cart item.",
              "type": "integer",
              "minimum": 1,
              "example": 3
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "The quantity field is missing or outside the allowed range."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The cart or cart item was not found."
  }
}
POSTCreare un carrello/api/v1.0/carts/create
Carts

Risposte

201401
Visualizza lo schema
{
  "201": {
    "description": "Cart successfully created.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "cart_id",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "cart_id": {
              "description": "ID of the newly created cart.",
              "type": "integer",
              "example": 19403076
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  }
}
POSTConvertire il carrello in ordine/api/v1.0/carts/{cart_id}/finalize
Carts

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
cart_idpathintegerObbligatorio
Visualizza lo schema
[
  {
    "name": "cart_id",
    "in": "path",
    "description": "ID of the cart to finalize.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 19403076
    }
  }
]

Risposte

201400401404409
Visualizza lo schema
{
  "201": {
    "description": "Cart successfully finalized and order created.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "order_id",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "order_id": {
              "description": "ID of the newly created order.",
              "type": "integer",
              "example": 205481
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "The cart ID is invalid or the cart cannot be finalized."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The cart was not found or does not belong to the authenticated user."
  },
  "409": {
    "description": "The cart has already been finalized."
  }
}
POSTImpostare il metodo di spedizione/api/v1.0/carts/{cart_id}/shipping
Carts

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
cart_idpathintegerObbligatorio
Visualizza lo schema
[
  {
    "name": "cart_id",
    "in": "path",
    "description": "ID of the cart.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 19403076
    }
  }
]

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "description": "The shipping method to select for the cart.",
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "shipping_method_id"
        ],
        "properties": {
          "shipping_method_id": {
            "description": "ID of an available shipping method.",
            "type": "integer",
            "example": 12
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400401404
Visualizza lo schema
{
  "200": {
    "description": "Shipping method successfully selected.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "shipping_method_id",
            "shipping_method",
            "shipping_price_ex_vat",
            "shipping_price_vat",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "shipping_method_id": {
              "description": "ID of the selected shipping method.",
              "type": "integer",
              "example": 12
            },
            "shipping_method": {
              "description": "Name of the selected shipping method.",
              "type": "string",
              "example": "Standard shipping"
            },
            "currency": {
              "description": "Currency.",
              "type": "string",
              "example": "EUR"
            },
            "shipping_price_ex_vat": {
              "description": "Shipping price excluding VAT.",
              "type": "number",
              "format": "float",
              "example": 7
            },
            "shipping_price_vat": {
              "description": "VAT charged on the shipping price.",
              "type": "number",
              "format": "float",
              "example": 1.47
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "The shipping_method_id is missing, invalid, or unavailable for this cart."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The cart was not found or does not belong to the authenticated user."
  }
}
GETElenco dei metodi di spedizione/api/v1.0/carts/{cart_id}/shippingmethods/{language}
Carts

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
cart_idpathintegerObbligatorio
languagepathstringObbligatorio
Visualizza lo schema
[
  {
    "name": "cart_id",
    "in": "path",
    "description": "ID of the cart.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 19403076
    }
  },
  {
    "name": "language",
    "in": "path",
    "description": "Two-character language code used for the translated title and description.",
    "required": true,
    "schema": {
      "type": "string",
      "enum": [
        "nl",
        "en",
        "de"
      ],
      "example": "nl"
    }
  }
]

Risposte

200400401404
Visualizza lo schema
{
  "200": {
    "description": "Available shipping methods successfully retrieved.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "shipping_methods",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "shipping_methods": {
              "description": "Shipping methods available for the cart.",
              "type": "array",
              "items": {
                "required": [
                  "id",
                  "icon",
                  "icon_thumb",
                  "title",
                  "description",
                  "price"
                ],
                "properties": {
                  "id": {
                    "description": "ID of the shipping method.",
                    "type": "integer",
                    "example": 12
                  },
                  "icon": {
                    "description": "URL of the shipping method icon.",
                    "type": "string",
                    "format": "uri",
                    "example": "https://example.com/images/shipping/dhl.svg"
                  },
                  "icon_thumb": {
                    "description": "URL of the thumbnail version of the icon.",
                    "type": "string",
                    "format": "uri",
                    "example": "https://example.com/images/shipping/thumb_dhl.svg"
                  },
                  "title": {
                    "description": "Translated name of the shipping method.",
                    "type": "string",
                    "example": "Standaard verzending"
                  },
                  "description": {
                    "description": "Translated description of the shipping method.",
                    "type": "string",
                    "example": "Levering binnen 1 tot 2 werkdagen."
                  },
                  "price": {
                    "required": [
                      "currency",
                      "vat_percentage",
                      "price_ex_vat"
                    ],
                    "properties": {
                      "currency": {
                        "description": "ISO 4217 currency code.",
                        "type": "string",
                        "example": "EUR"
                      },
                      "vat_percentage": {
                        "description": "VAT percentage applied to the shipping price.",
                        "type": "number",
                        "format": "float",
                        "example": 21
                      },
                      "price_ex_vat": {
                        "description": "Shipping price excluding VAT.",
                        "type": "string",
                        "example": "7.00"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              }
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "The cart_id or language parameter is invalid."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The cart was not found or no shipping methods are available."
  }
}
GETElenco dei carrelli/api/v1.0/carts/list
Carts

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
limitqueryintegerOpzionale
pagequeryintegerOpzionale
Visualizza lo schema
[
  {
    "name": "limit",
    "in": "query",
    "description": "Maximum number of carts returned per page. The maximum allowed value is 30.",
    "required": false,
    "schema": {
      "type": "integer",
      "default": 10,
      "maximum": 30,
      "example": 10
    }
  },
  {
    "name": "page",
    "in": "query",
    "description": "Page number to return.",
    "required": false,
    "schema": {
      "type": "integer",
      "default": 1,
      "minimum": 1,
      "example": 1
    }
  }
]

Risposte

200401404
Visualizza lo schema
{
  "200": {
    "description": "Carts successfully retrieved.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "carts",
            "total_items",
            "pages",
            "items_per_page",
            "current_page",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "carts": {
              "description": "Cart collection keyed by cart ID.",
              "type": "object",
              "additionalProperties": {
                "required": [
                  "cart_id",
                  "helpdeskcode",
                  "item_quantity",
                  "item_subtotal",
                  "shipping",
                  "total_vat",
                  "total_ex_vat",
                  "total"
                ],
                "properties": {
                  "cart_id": {
                    "type": "integer",
                    "example": 19403076
                  },
                  "helpdeskcode": {
                    "type": "string",
                    "example": "bf04e"
                  },
                  "item_quantity": {
                    "type": "integer",
                    "example": 3
                  },
                  "item_subtotal": {
                    "description": "Formatted subtotal of all cart items.",
                    "type": "string",
                    "example": "€ 97,05"
                  },
                  "shipping": {
                    "description": "Formatted shipping cost.",
                    "type": "string",
                    "example": "€ 7,00"
                  },
                  "total_vat": {
                    "description": "Formatted total VAT amount.",
                    "type": "string",
                    "example": "€ 21,85"
                  },
                  "total_ex_vat": {
                    "description": "Formatted total excluding VAT.",
                    "type": "string",
                    "example": "€ 104,05"
                  },
                  "total": {
                    "description": "Formatted total including VAT.",
                    "type": "string",
                    "example": "€ 125,90"
                  }
                },
                "type": "object"
              }
            },
            "total_items": {
              "type": "integer",
              "example": 2
            },
            "pages": {
              "type": "integer",
              "example": 1
            },
            "items_per_page": {
              "type": "integer",
              "example": 10
            },
            "current_page": {
              "type": "integer",
              "example": 1
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "No carts were found for the authenticated user."
  }
}
DELETEEliminare un carrello/api/v1.0/carts/{cart_id}
Carts

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
cart_idpathintegerObbligatorio
Visualizza lo schema
[
  {
    "name": "cart_id",
    "in": "path",
    "description": "ID of the cart to remove.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 19403076
    }
  }
]

Risposte

200400401404
Visualizza lo schema
{
  "200": {
    "description": "Cart successfully removed.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "removed",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "removed": {
              "description": "ID of the cart that was removed.",
              "type": "integer",
              "example": 19403076
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "The cart_id path parameter is invalid."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The cart was not found or does not belong to the authenticated user."
  }
}
POSTRecuperare le sottocategorie/api/v1.0/categories/byParent
Categorie

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "parent_id"
        ],
        "properties": {
          "parent_id": {
            "description": "An category ID.",
            "type": "integer"
          },
          "language": {
            "description": "The language of the response.",
            "type": "string",
            "default": "en"
          },
          "page": {
            "description": "The page number for pagination, starting from 0.",
            "type": "integer",
            "default": 1
          },
          "limit": {
            "description": "The maximum number of items per page.",
            "type": "integer",
            "default": 10
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400404
Visualizza lo schema
{
  "200": {
    "description": "Get categories by parent_id successfully."
  },
  "400": {
    "description": "Invalid input. parent_id must be provided."
  },
  "404": {
    "description": "No categories found."
  }
}
POSTCategorie di ricerca/api/v1.0/categories/search
Categorie

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "search_term"
        ],
        "properties": {
          "search_term": {
            "description": "1 or multiple search_term (use variations for more hits) title, seo_path etc.",
            "type": "array",
            "items": {
              "type": "string",
              "default": ""
            },
            "example": [
              "name, seo_path"
            ]
          },
          "language": {
            "description": "The language of the response.",
            "type": "string",
            "default": "en"
          },
          "page": {
            "description": "The page number for pagination, starting from 0.",
            "type": "integer",
            "default": 1
          },
          "limit": {
            "description": "The maximum number of items per page.",
            "type": "integer",
            "default": 10
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400404
Visualizza lo schema
{
  "200": {
    "description": "Get categories by search_term."
  },
  "400": {
    "description": "Invalid input. search_term must be provided."
  },
  "404": {
    "description": "No categories found."
  }
}
GETElenco degli ordini/api/v1.0/orders
Ordini

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
limitqueryintegerOpzionale
pagequeryintegerOpzionale
languagequerystringOpzionale
statusquerystringOpzionale
date_fromquerystringOpzionale
date_tillquerystringOpzionale
Visualizza lo schema
[
  {
    "name": "limit",
    "in": "query",
    "description": "Maximum number of orders returned per page.",
    "required": false,
    "schema": {
      "type": "integer",
      "default": 10,
      "maximum": 30,
      "minimum": 1,
      "example": 10
    }
  },
  {
    "name": "page",
    "in": "query",
    "description": "Page number to return.",
    "required": false,
    "schema": {
      "type": "integer",
      "default": 1,
      "minimum": 1,
      "example": 1
    }
  },
  {
    "name": "language",
    "in": "query",
    "description": "Two-character language code used for translated order data.",
    "required": false,
    "schema": {
      "type": "string",
      "maxLength": 2,
      "minLength": 2,
      "example": "nl"
    }
  },
  {
    "name": "status",
    "in": "query",
    "description": "Comma-separated list of order status IDs. An order is returned when its status matches one of the supplied IDs.",
    "required": false,
    "schema": {
      "type": "string",
      "pattern": "^\\d+(,\\d+)*$",
      "example": "1,3,4"
    }
  },
  {
    "name": "date_from",
    "in": "query",
    "description": "Return orders created on or after this date.",
    "required": false,
    "schema": {
      "type": "string",
      "format": "date",
      "example": "2026-01-01"
    }
  },
  {
    "name": "date_till",
    "in": "query",
    "description": "Return orders created on or before this date.",
    "required": false,
    "schema": {
      "type": "string",
      "format": "date",
      "example": "2026-08-31"
    }
  }
]

Risposte

200400401404
Visualizza lo schema
{
  "200": {
    "description": "Orders successfully retrieved.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "orders",
            "total_items",
            "pages",
            "items_per_page",
            "current_page",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "orders": {
              "description": "Order collection keyed by order ID.",
              "type": "object",
              "additionalProperties": {
                "description": "Order data generated by OrderListDTO.",
                "type": "object"
              }
            },
            "total_items": {
              "description": "Total number of orders matching the filters.",
              "type": "integer",
              "minimum": 0,
              "example": 24
            },
            "pages": {
              "description": "Total number of available pages.",
              "type": "integer",
              "minimum": 0,
              "example": 3
            },
            "items_per_page": {
              "description": "Maximum number of orders returned per page.",
              "type": "integer",
              "example": 10
            },
            "current_page": {
              "description": "Current page number.",
              "type": "integer",
              "minimum": 1,
              "example": 1
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "One or more pagination, language, or date parameters are invalid."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "No orders matching the supplied filters were found."
  }
}
POSTCreare un link di pagamento/api/v1.0/orders/paymentlink
Ordini

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "description": "The order, payment method and optional partial payment amount.",
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "order_id",
          "payment_method"
        ],
        "properties": {
          "order_id": {
            "description": "ID of the order for which the payment link should be created.",
            "type": "integer",
            "example": 205481
          },
          "payment_method": {
            "description": "ID of the payment method to use.",
            "type": "integer",
            "example": 3
          },
          "payment_amount": {
            "description": "Optional partial payment amount. When omitted, a link for the total unpaid amount is created. The amount cannot exceed the outstanding order amount.",
            "type": "number",
            "format": "float",
            "minimum": 0.01,
            "example": 50,
            "nullable": true
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400401404
Visualizza lo schema
{
  "200": {
    "description": "Payment link successfully created.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "order_id",
            "total_unpaid",
            "payment_method",
            "payment_url",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "order_id": {
              "description": "ID of the order.",
              "type": "integer",
              "example": 205481
            },
            "total_unpaid": {
              "description": "Total outstanding amount on the order before this payment is completed.",
              "type": "number",
              "format": "float",
              "example": 125.9
            },
            "payment_method": {
              "description": "Name of the selected payment method.",
              "type": "string",
              "example": "iDEAL"
            },
            "payment_url": {
              "description": "URL where the customer can complete the payment.",
              "type": "string",
              "format": "uri",
              "example": "https://payments.example.com/pay/abc123"
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "A required field is missing, the payment amount is invalid, the payment method is unavailable, or the order has already been fully paid."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The order was not found or does not belong to the authenticated user."
  }
}
GETScarica il documento d'ordine/api/v1.0/orders/{order_id}/pdf/{type}
Ordini

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
order_idpathintegerObbligatorio
typepathstringObbligatorio
Visualizza lo schema
[
  {
    "name": "order_id",
    "in": "path",
    "description": "ID of the order.",
    "required": true,
    "schema": {
      "type": "integer",
      "example": 205481
    }
  },
  {
    "name": "type",
    "in": "path",
    "description": "Type of PDF document to generate.",
    "required": true,
    "schema": {
      "type": "string",
      "enum": [
        "order",
        "invoice",
        "credit"
      ],
      "example": "invoice"
    }
  }
]

Risposte

200400401404500
Visualizza lo schema
{
  "200": {
    "description": "PDF document successfully generated.",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "order_id",
            "filename",
            "pdf_base64",
            "format",
            "success",
            "error_message"
          ],
          "properties": {
            "order_id": {
              "description": "ID of the order.",
              "type": "integer",
              "example": 205481
            },
            "filename": {
              "description": "Suggested filename for the PDF document.",
              "type": "string",
              "example": "invoice-205481.pdf"
            },
            "pdf_base64": {
              "description": "Base64-encoded contents of the PDF document.",
              "type": "string",
              "format": "byte",
              "example": "JVBERi0xLjQKJc..."
            },
            "format": {
              "type": "string",
              "example": "json"
            },
            "success": {
              "type": "boolean",
              "example": true
            },
            "error_message": {
              "type": "array",
              "items": {},
              "example": []
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "The order_id is invalid or the document type is not order, invoice, or credit."
  },
  "401": {
    "description": "Invalid, missing, or expired authentication token."
  },
  "404": {
    "description": "The order or requested PDF document was not found."
  },
  "500": {
    "description": "The PDF document could not be generated."
  }
}
GETAssegno di controllo/api/v1.0/products/stock/{identifier}
Prodotti

Parametri

Campo di applicazioneLocationTipologiaObbligatorio
identifierpathstringObbligatorio
typequerystringOpzionale
Visualizza lo schema
[
  {
    "name": "identifier",
    "in": "path",
    "description": "<b>ID</b> or <b>EAN</b> or <b>SKU</b>.",
    "required": true,
    "schema": {
      "type": "string",
      "pattern": "^[a-z0-9A-Z]+$"
    }
  },
  {
    "name": "type",
    "in": "query",
    "required": false,
    "schema": {
      "type": "string",
      "enum": [
        "id",
        "ean",
        "sku"
      ]
    }
  }
]

Risposte

200404
Visualizza lo schema
{
  "200": {
    "description": "Get stock",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/Product"
        }
      }
    }
  },
  "404": {
    "description": "Product Not Found",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "success": {
              "type": "boolean",
              "example": false
            },
            "error_message": {
              "properties": {
                "code": {
                  "type": "integer",
                  "example": 404
                },
                "message": {
                  "type": "string",
                  "example": "Product Not Found"
                },
                "details": {
                  "type": "string",
                  "example": "The product with the specified ID: '{productId}', could not be found. Please verify the ID and try again."
                }
              },
              "type": "object"
            }
          },
          "type": "object"
        }
      }
    }
  }
}
POSTRicerca di prodotti/api/v1.0/products/search
Prodotti

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "properties": {
          "filters": {
            "description": "The filters ",
            "properties": {
              "productnumbers": {
                "description": "1 or multiple productnumbers.",
                "type": "array",
                "items": {
                  "type": "string",
                  "default": ""
                },
                "example": [
                  "productnumber"
                ]
              },
              "eancodes": {
                "description": "1 or multiple eancodes.",
                "type": "array",
                "items": {
                  "type": "string",
                  "default": ""
                },
                "example": [
                  "eancode"
                ]
              },
              "brands": {
                "description": "1 or multiple brand names.",
                "type": "array",
                "items": {
                  "type": "string",
                  "default": ""
                },
                "example": [
                  "Brand name"
                ]
              },
              "brand_ids": {
                "description": "1 or multiple brand ids.",
                "type": "array",
                "items": {
                  "type": "integer",
                  "default": 0
                },
                "example": [
                  1,
                  2,
                  3
                ]
              },
              "categories": {
                "description": "1 or multiple category seo_paths.",
                "type": "array",
                "items": {
                  "type": "string",
                  "default": ""
                },
                "example": [
                  "/parts/subcat"
                ]
              },
              "categorie_ids": {
                "description": "1 or multiple category ids.",
                "type": "array",
                "items": {
                  "type": "integer",
                  "default": 0
                },
                "example": [
                  1,
                  2,
                  3
                ]
              },
              "producttype_ids": {
                "description": "1 or multiple producttype ids.",
                "type": "array",
                "items": {
                  "type": "integer",
                  "default": 0
                },
                "example": [
                  1,
                  2,
                  3
                ]
              },
              "vehicle_ids": {
                "description": "1 or multiple internal vehicle ids.",
                "type": "array",
                "items": {
                  "type": "integer",
                  "default": 0
                },
                "example": [
                  1,
                  2,
                  3
                ]
              },
              "ktype_ids": {
                "description": "1 or multiple ktype ids.",
                "type": "array",
                "items": {
                  "type": "integer",
                  "default": 0
                },
                "example": [
                  1,
                  2,
                  3
                ]
              },
              "property_ids": {
                "type": "array",
                "items": {
                  "type": "integer"
                },
                "example": [
                  120,
                  151
                ]
              }
            },
            "type": "object"
          },
          "page": {
            "description": "The page number for pagination, starting from 0.",
            "type": "integer",
            "default": 1
          },
          "limit": {
            "description": "The maximum number of items per page.",
            "type": "integer",
            "default": 10,
            "maximum": 50,
            "minimum": 10
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400
Visualizza lo schema
{
  "200": {
    "description": "Get product ids successfully."
  },
  "400": {
    "description": "Invalid input. 1 or multiple variables must be provided."
  }
}
POSTRecuperare i filtri del prodotto/api/v1.0/products/search/filters
Prodotti

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "properties": {
          "filters": {
            "properties": {
              "productnumbers": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "example": [
                  "12345",
                  "67890"
                ]
              },
              "eancodes": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "example": [
                  "8712345678901"
                ]
              },
              "categories": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "example": [
                  "engine-parts"
                ]
              },
              "category_ids": {
                "type": "array",
                "items": {
                  "type": "integer"
                },
                "example": [
                  10,
                  20
                ]
              },
              "brands": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "example": [
                  "FEBI BILSTEIN"
                ]
              },
              "brand_ids": {
                "type": "array",
                "items": {
                  "type": "integer"
                },
                "example": [
                  19,
                  60
                ]
              },
              "producttype_ids": {
                "type": "array",
                "items": {
                  "type": "integer"
                },
                "example": [
                  1,
                  2
                ]
              },
              "vehicle_ids": {
                "type": "array",
                "items": {
                  "type": "integer"
                },
                "example": [
                  1001
                ]
              },
              "ktype_ids": {
                "type": "array",
                "items": {
                  "type": "integer"
                },
                "example": [
                  12345
                ]
              },
              "property_ids": {
                "type": "array",
                "items": {
                  "type": "integer"
                },
                "example": [
                  120,
                  151
                ]
              }
            },
            "type": "object"
          },
          "limit": {
            "type": "integer",
            "maximum": 50,
            "example": 10
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "example": 1
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200404400
Visualizza lo schema
{
  "200": {
    "description": "Filters retrieved successfully",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "total_items": {
              "type": "integer",
              "example": 2
            },
            "pages": {
              "type": "integer",
              "example": 1
            },
            "items_per_pages": {
              "type": "integer",
              "example": 10
            },
            "current_page": {
              "type": "integer",
              "example": 1
            },
            "filters": {
              "type": "object",
              "example": {
                "5_property_120": {
                  "id": "property_120",
                  "title": "fitting position",
                  "filters": [
                    {
                      "title": "front axle left",
                      "id": 153,
                      "icon": "",
                      "count": 2,
                      "selected": false
                    },
                    {
                      "title": "front axle right",
                      "id": 154,
                      "icon": "",
                      "count": 1,
                      "selected": false
                    },
                    {
                      "title": "front",
                      "id": 937,
                      "icon": "",
                      "count": 1,
                      "selected": false
                    },
                    {
                      "title": "upper",
                      "id": 1283,
                      "icon": "",
                      "count": 1,
                      "selected": false
                    }
                  ],
                  "selected": null
                }
              },
              "additionalProperties": {
                "properties": {
                  "id": {
                    "type": "string",
                    "example": "property_120"
                  },
                  "title": {
                    "type": "string",
                    "example": "fitting position"
                  },
                  "filters": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "title": {
                          "type": "string",
                          "example": "front axle left"
                        },
                        "id": {
                          "type": "integer",
                          "example": 153
                        },
                        "icon": {
                          "type": "string",
                          "example": ""
                        },
                        "count": {
                          "type": "integer",
                          "example": 2
                        },
                        "selected": {
                          "type": "boolean",
                          "example": false
                        }
                      },
                      "type": "object"
                    }
                  },
                  "selected": {
                    "example": null,
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          },
          "type": "object"
        }
      }
    }
  },
  "404": {
    "description": "No products found",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "error": {
              "type": "string",
              "example": "No Products Found"
            },
            "message": {
              "type": "string",
              "example": "The products with the specified filters could not be found."
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "Missing filters",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "error": {
              "type": "string",
              "example": "Missing required filters"
            },
            "fields": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "type": "object"
        }
      }
    }
  }
}
POSTRecuperare i dati dei prodotti/api/v1.0/products/data
Prodotti

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "products",
          "language"
        ],
        "properties": {
          "products": {
            "description": "An array of product IDs.",
            "type": "array",
            "items": {
              "type": "integer",
              "default": ""
            }
          },
          "language": {
            "description": "The language of the response.",
            "type": "string",
            "default": "en"
          },
          "options": {
            "description": "The optional flags",
            "properties": {
              "vehicle_id": {
                "description": "Vehicle id required for vehicle properties.",
                "type": "integer",
                "default": "0"
              },
              "oenumbers": {
                "description": "Include OE numbers.",
                "type": "boolean",
                "default": false
              },
              "images": {
                "description": "Include images.",
                "type": "boolean",
                "default": false
              },
              "usageNumbers": {
                "description": "Include usage numbers.",
                "type": "boolean",
                "default": false
              },
              "measurements": {
                "description": "Include measurements.",
                "type": "boolean",
                "default": false
              },
              "package_measurements": {
                "description": "Include package measurements.",
                "type": "boolean",
                "default": false
              },
              "stock": {
                "description": "Include internal,external stock.",
                "type": "boolean",
                "default": false
              },
              "categories": {
                "description": "Include categories.",
                "type": "boolean",
                "default": false
              },
              "brand": {
                "description": "Include brand.",
                "type": "boolean",
                "default": false
              },
              "properties": {
                "description": "Include properties.",
                "type": "boolean",
                "default": false
              }
            },
            "type": "object"
          },
          "page": {
            "description": "The page number for pagination, starting from 0.",
            "type": "integer",
            "default": 1
          },
          "limit": {
            "description": "The maximum number of items per page.",
            "type": "integer",
            "default": 10,
            "maximum": 50,
            "minimum": 10
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400
Visualizza lo schema
{
  "200": {
    "description": "Get product data successfully."
  },
  "400": {
    "description": "Invalid input. Either products and language or categorieUrl and language must be provided."
  }
}
POSTRecuperare i dati del prodotto e del veicolo/api/v1.0/products/data/vehicles
Prodotti

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "product_id"
        ],
        "properties": {
          "product_id": {
            "description": "An product ID.",
            "type": "integer"
          },
          "page": {
            "description": "The page number for pagination, starting from 0.",
            "type": "integer",
            "default": 1
          },
          "limit": {
            "description": "The maximum number of items per page.",
            "type": "integer",
            "default": 10
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400404
Visualizza lo schema
{
  "200": {
    "description": "Get product vehicles successfully."
  },
  "400": {
    "description": "Invalid input. product_id must be provided."
  },
  "404": {
    "description": "No vehicles found."
  }
}
POSTRecuperare prodotti alternativi/api/v1.0/products/alternatives
Prodotti

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "product_id",
          "language",
          "vehicle_id"
        ],
        "properties": {
          "product_id": {
            "description": "Product id.",
            "type": "integer",
            "default": ""
          },
          "language": {
            "description": "The language of the response.",
            "type": "string",
            "default": "en"
          },
          "vehicle_id": {
            "description": "The vehicle_id required for compatibility.",
            "type": "integer",
            "default": ""
          },
          "brand_id": {
            "description": "The brand_id (optional)",
            "type": "integer",
            "default": ""
          },
          "options": {
            "description": "The optional flags",
            "properties": {
              "images": {
                "description": "Include images.",
                "type": "boolean",
                "default": false
              },
              "stock": {
                "description": "Include internal,external stock.",
                "type": "boolean",
                "default": false
              },
              "categories": {
                "description": "Include categories.",
                "type": "boolean",
                "default": false
              },
              "brand": {
                "description": "Include brand.",
                "type": "boolean",
                "default": false
              },
              "properties": {
                "description": "Include properties.",
                "type": "boolean",
                "default": false
              }
            },
            "type": "object"
          },
          "page": {
            "description": "The page number for pagination, starting from 0.",
            "type": "integer",
            "default": 1
          },
          "limit": {
            "description": "The maximum number of items per page.",
            "type": "integer",
            "default": 10,
            "maximum": 50,
            "minimum": 10
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400
Visualizza lo schema
{
  "200": {
    "description": "Get product data successfully."
  },
  "400": {
    "description": "Invalid input. products, language and vehicle_id must be provided."
  }
}
POSTRecuperare i prodotti di manutenzione/api/v1.0/products/maintenance
Prodotti

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "product_id",
          "language"
        ],
        "properties": {
          "product_id": {
            "description": "Product id.",
            "type": "integer",
            "default": ""
          },
          "language": {
            "description": "The language of the response.",
            "type": "string",
            "default": "en"
          },
          "options": {
            "description": "The optional flags",
            "properties": {
              "images": {
                "description": "Include images.",
                "type": "boolean",
                "default": false
              },
              "stock": {
                "description": "Include internal,external stock.",
                "type": "boolean",
                "default": false
              },
              "categories": {
                "description": "Include categories.",
                "type": "boolean",
                "default": false
              },
              "brand": {
                "description": "Include brand.",
                "type": "boolean",
                "default": false
              },
              "properties": {
                "description": "Include properties.",
                "type": "boolean",
                "default": false
              }
            },
            "type": "object"
          },
          "page": {
            "description": "The page number for pagination, starting from 0.",
            "type": "integer",
            "default": 1
          },
          "limit": {
            "description": "The maximum number of items per page.",
            "type": "integer",
            "default": 10,
            "maximum": 50,
            "minimum": 10
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400
Visualizza lo schema
{
  "200": {
    "description": "Get product data successfully."
  },
  "400": {
    "description": "Invalid input. products, language and vehicle_id must be provided."
  }
}
POSTCreare un utente/api/v1.0/users/create
Utenti

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "properties": {
          "username": {
            "description": "Username for login. If the system is configured to use email as username, this must be a valid email address.",
            "type": "string",
            "example": "john@example.com"
          },
          "email": {
            "description": "Email address of the user.",
            "type": "string",
            "example": "john@example.com"
          },
          "password": {
            "description": "User password. If not provided, a random password will be generated automatically.",
            "type": "string",
            "example": "StrongPassword123"
          },
          "gender": {
            "description": "Gender of the user.",
            "type": "string",
            "example": "male"
          },
          "firstname": {
            "type": "string",
            "example": "John"
          },
          "lastname": {
            "type": "string",
            "example": "Doe"
          },
          "address": {
            "type": "string",
            "example": "Main Street"
          },
          "address2": {
            "type": "string",
            "example": "Apartment 5"
          },
          "addressnumber": {
            "type": "string",
            "example": "12"
          },
          "postalcode": {
            "type": "string",
            "example": "1234AB"
          },
          "city": {
            "type": "string",
            "example": "Amsterdam"
          },
          "country": {
            "description": "Country code (ISO2 or ISO3). Will be converted internally to the country ID.",
            "type": "string",
            "example": "NL"
          },
          "state": {
            "type": "string",
            "example": "North Holland"
          },
          "phone": {
            "type": "string",
            "example": "+31 20 1234567"
          },
          "mobphone": {
            "type": "string",
            "example": "+31 6 12345678"
          },
          "companyname": {
            "type": "string",
            "example": "Example BV"
          },
          "chambercommerce": {
            "description": "Chamber of Commerce registration number.",
            "type": "string",
            "example": "12345678"
          },
          "eori_number": {
            "type": "string",
            "example": "NL123456789"
          },
          "vatnumber": {
            "type": "string",
            "example": "NL123456789B01"
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400
Visualizza lo schema
{
  "200": {
    "description": "User successfully created.",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "id": {
              "type": "integer",
              "example": 125
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "Validation error (missing or invalid fields)."
  }
}
POSTAccedi a un utente/api/v1.0/users/auth/login
Utenti

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "username",
          "password"
        ],
        "properties": {
          "username": {
            "type": "string",
            "example": "john@example.com"
          },
          "password": {
            "type": "string",
            "example": "StrongPassword123"
          }
        },
        "type": "object"
      }
    }
  }
}

Risposte

200400
Visualizza lo schema
{
  "200": {
    "description": "Login successful",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "token": {
              "type": "string",
              "example": "4e6c6d4f5b1c4b1c3f8e6f4d"
            },
            "user_id": {
              "type": "integer",
              "example": 125
            }
          },
          "type": "object"
        }
      }
    }
  },
  "400": {
    "description": "Invalid credentials"
  }
}
POSTAccedi alla sessione corrente/api/v1.0/users/auth/logout
Utenti

Risposte

200401
Visualizza lo schema
{
  "200": {
    "description": "User logged out",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "logged_out": {
              "type": "boolean",
              "example": true
            }
          },
          "type": "object"
        }
      }
    }
  },
  "401": {
    "description": "Invalid or missing token"
  }
}
POSTAccedi a tutte le sessioni/api/v1.0/users/auth/logout/all
Utenti

Risposte

200401
Visualizza lo schema
{
  "200": {
    "description": "User logged out",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "logged_out": {
              "type": "boolean",
              "example": true
            }
          },
          "type": "object"
        }
      }
    }
  },
  "401": {
    "description": "Invalid or missing token"
  }
}
POSTToken rinfrescante/api/v1.0/users/auth/refresh
Utenti

Risposte

200401
Visualizza lo schema
{
  "200": {
    "description": "Token refreshed",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "token": {
              "type": "string",
              "example": "new_token_abcdef123456"
            },
            "expires_in": {
              "description": "Token lifetime in seconds",
              "type": "integer",
              "example": 2592000
            }
          },
          "type": "object"
        }
      }
    }
  },
  "401": {
    "description": "Invalid or expired token"
  }
}
POSTRecuperare l'utente corrente/api/v1.0/users/auth/whoami
Utenti

Risposte

200401
Visualizza lo schema
{
  "200": {
    "description": "User information",
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "user_id": {
              "type": "integer",
              "example": 125
            },
            "username": {
              "type": "string",
              "example": "john@example.com"
            },
            "email": {
              "type": "string",
              "example": "john@example.com"
            },
            "firstname": {
              "type": "string",
              "example": "John"
            },
            "lastname": {
              "type": "string",
              "example": "Doe"
            }
          },
          "type": "object"
        }
      }
    }
  },
  "401": {
    "description": "Invalid or expired token"
  }
}
POSTVeicoli di ricerca/api/v1.0/vehicles/search
Veicoli

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "filters"
        ],
        "properties": {
          "filters": {
            "description": "At least one filter must be provided.",
            "properties": {
              "licenseplates": {
                "description": "1 or multiple licenseplates. Requires 'country' to be set.",
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "vinnumbers": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "vehicle_ids": {
                "type": "array",
                "items": {
                  "type": "integer"
                }
              },
              "ktype_ids": {
                "type": "array",
                "items": {
                  "type": "integer"
                }
              }
            },
            "type": "object"
          },
          "country": {
            "description": "ISO country code (e.g. 'nl'). REQUIRED when using 'filters.licenseplates'.",
            "type": "string",
            "example": "nl"
          },
          "language": {
            "type": "string",
            "default": "en"
          },
          "page": {
            "type": "integer",
            "default": 1
          },
          "limit": {
            "type": "integer",
            "default": 10,
            "maximum": 50,
            "minimum": 10
          }
        },
        "type": "object"
      },
      "examples": {
        "licenseplate_search": {
          "summary": "Licenseplate search (country REQUIRED)",
          "value": {
            "filters": {
              "licenseplates": [
                "AB123CD"
              ]
            },
            "country": "nl",
            "language": "en",
            "page": 1,
            "limit": 10
          }
        },
        "multiple_licenseplates": {
          "summary": "Multiple licenseplates",
          "value": {
            "filters": {
              "licenseplates": [
                "AB123CD",
                "XY987ZT"
              ]
            },
            "country": "nl",
            "language": "en"
          }
        },
        "vin_search": {
          "summary": "Search by VIN (no country required)",
          "value": {
            "filters": {
              "vinnumbers": [
                "WBA123456789",
                "VF1123456789"
              ]
            },
            "language": "en"
          }
        },
        "vehicle_ids_search": {
          "summary": "Search by internal vehicle IDs",
          "value": {
            "filters": {
              "vehicle_ids": [
                1,
                25,
                99
              ]
            },
            "language": "en"
          }
        },
        "ktype_ids_search": {
          "summary": "Search by TecDoc ktype IDs",
          "value": {
            "filters": {
              "ktype_ids": [
                12345,
                67890
              ]
            },
            "language": "en"
          }
        },
        "combined_search": {
          "summary": "Combined filters (VIN + ktype)",
          "value": {
            "filters": {
              "vinnumbers": [
                "WBA123456789"
              ],
              "ktype_ids": [
                12345
              ]
            },
            "language": "en",
            "page": 1,
            "limit": 20
          }
        },
        "invalid_missing_country": {
          "summary": "Invalid: licenseplate without country",
          "value": {
            "filters": {
              "licenseplates": [
                "AB123CD"
              ]
            },
            "language": "en"
          }
        },
        "invalid_no_filters": {
          "summary": "Invalid: no filters provided",
          "value": {
            "filters": [],
            "language": "en"
          }
        }
      }
    }
  }
}

Risposte

200
Visualizza lo schema
{
  "200": {
    "description": "Get vehicles successfully. Vehicles are returned as an object keyed by vehicle ID. Each vehicle contains a 'matched_on' field describing which input matched it.",
    "content": {
      "application/json": {
        "examples": {
          "licenseplate_result": {
            "summary": "Licenseplate search result",
            "value": {
              "vehicles": {
                "1": {
                  "id": 1,
                  "ktype": 116873,
                  "manufacturer": "TOYOTA",
                  "short_name": "1.2 (PAB40)",
                  "model": {
                    "id": 1,
                    "model": "AYGO",
                    "model_group": "AYGO",
                    "model_type": "_B4_",
                    "vehicle_type": null
                  },
                  "cylinder_amount": 3,
                  "cylinder_capacity_ccm": 1199,
                  "cylinder_capacity_liter": 120,
                  "valves": 4,
                  "impulsion_type": "Voorwielaandrijving",
                  "construction_type": "Hatchback",
                  "construction_start": "2014-04",
                  "construction_end": null,
                  "power_hp": 82,
                  "power_kw": 60,
                  "fueltype": "Benzine",
                  "matched_on": {
                    "type": "licenseplate",
                    "country": "ch",
                    "value": "3mp480"
                  }
                }
              },
              "total_items": 1,
              "pages": 1,
              "items_per_pages": 10,
              "current_page": 1,
              "format": "json",
              "success": true,
              "error_message": []
            }
          },
          "vin_result": {
            "summary": "VIN search result",
            "value": {
              "vehicles": {
                "201": {
                  "id": 201,
                  "ktype": 99887,
                  "manufacturer": "BMW",
                  "short_name": "320d",
                  "fueltype": "Diesel",
                  "matched_on": {
                    "type": "vinnumber",
                    "value": "WBA123456789"
                  }
                }
              },
              "total_items": 1,
              "pages": 1,
              "items_per_pages": 10,
              "current_page": 1,
              "format": "json",
              "success": true,
              "error_message": []
            }
          },
          "empty_result": {
            "summary": "No vehicles found",
            "value": {
              "vehicles": [],
              "total_items": 0,
              "pages": 0,
              "items_per_pages": 10,
              "current_page": 1,
              "format": "json",
              "success": false,
              "error_message": [
                "No vehicles found"
              ]
            }
          }
        }
      }
    }
  }
}
POSTRicerca di un veicolo per nome e modello/api/v1.0/vehicles/searchByNameModel
Veicoli

Richiesta corpo

Obbligatorio

Visualizza lo schema
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "required": [
          "manufacturer"
        ],
        "properties": {
          "manufacturer": {
            "description": "Manufacturer name (required)",
            "type": "string",
            "example": "BMW"
          },
          "short_name": {
            "description": "Vehicle short name",
            "type": "string",
            "example": "320d"
          },
          "modelname": {
            "description": "Vehicle model name",
            "type": "string",
            "example": "3 Series"
          },
          "modelgroup": {
            "description": "Vehicle model group",
            "type": "string",
            "example": "Golf"
          },
          "construction_type": {
            "description": "Vehicle construction type",
            "type": "string",
            "example": "Hatchback"
          },
          "construction_start": {
            "description": "Production start date",
            "type": "string",
            "format": "date",
            "example": "2018-01-01"
          },
          "construction_end": {
            "description": "Production end date",
            "type": "string",
            "format": "date",
            "example": "2022-12-31"
          },
          "language": {
            "type": "string",
            "default": "en",
            "example": "en"
          },
          "page": {
            "type": "integer",
            "default": 1,
            "example": 1
          },
          "limit": {
            "type": "integer",
            "default": 10,
            "maximum": 50,
            "minimum": 10,
            "example": 10
          }
        },
        "type": "object"
      },
      "examples": {
        "manufacturer_and_model": {
          "summary": "Manufacturer + model name",
          "value": {
            "manufacturer": "BMW",
            "modelname": "3 Series",
            "language": "en",
            "page": 1,
            "limit": 10
          }
        },
        "manufacturer_and_modelgroup": {
          "summary": "Manufacturer + model group",
          "value": {
            "manufacturer": "Volkswagen",
            "modelgroup": "Golf",
            "language": "en"
          }
        },
        "full_search": {
          "summary": "Complete search",
          "value": {
            "manufacturer": "Mercedes-Benz",
            "short_name": "220 CDI",
            "modelname": "C-Class",
            "construction_type": "Sedan",
            "construction_start": "2018-01-01",
            "construction_end": "2022-12-31",
            "language": "en",
            "page": 1,
            "limit": 20
          }
        },
        "construction_type_search": {
          "summary": "Manufacturer + construction type",
          "value": {
            "manufacturer": "Audi",
            "construction_type": "Hatchback",
            "language": "en"
          }
        },
        "invalid_request": {
          "summary": "Invalid request",
          "value": {
            "language": "en"
          }
        }
      }
    }
  }
}

Risposte

200404403422
Visualizza lo schema
{
  "200": {
    "description": "Vehicles found successfully",
    "content": {
      "application/json": {
        "schema": {},
        "example": {
          "vehicles": [
            {
              "id": 123,
              "ktype": 456789,
              "manufacturer": "BMW",
              "short_name": "320d",
              "model": {
                "id": 10,
                "model": "3 Series",
                "model_group": "3 Series",
                "model_type": "F30",
                "vehicle_type": null
              },
              "fueltype": "Diesel",
              "construction_type": "Sedan",
              "construction_start": "2018-01",
              "construction_end": null,
              "power_hp": 190,
              "power_kw": 140
            }
          ],
          "total_items": 1,
          "pages": 1,
          "items_per_pages": 10,
          "current_page": 1,
          "success": true,
          "error_message": []
        }
      }
    }
  },
  "404": {
    "description": "No vehicles found"
  },
  "403": {
    "description": "TecDoc service disabled"
  },
  "422": {
    "description": "Validation error"
  }
}
Scarica le specifiche OpenAPI ↓Documentazione originale aperta Sulla base delle specifiche pubblicate recuperate il 7 ottobre 2026.
Modelli di dati condivisi
{
  "StockItem": {
    "properties": {
      "stock": {
        "type": "integer",
        "example": 1
      },
      "batch_id": {
        "type": "string",
        "example": ""
      },
      "warehouse_id": {
        "type": "integer",
        "example": 1
      },
      "warehouse_name": {
        "type": "string",
        "example": "Central Warehouse"
      },
      "warehouse_location_id": {
        "type": "integer",
        "example": 3
      },
      "warehouse_location_code": {
        "type": "string",
        "example": "W001R001C01S01",
        "nullable": true
      }
    },
    "type": "object"
  },
  "InventoryDetail": {
    "properties": {
      "unique_identifier": {
        "type": "string",
        "example": "178_0_0_0"
      },
      "configuration_id": {
        "type": "integer",
        "example": 0
      },
      "user_input_hash": {
        "type": "string",
        "example": ""
      },
      "stock": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/StockItem"
        }
      },
      "total_quantity": {
        "type": "integer",
        "example": 21
      }
    },
    "type": "object"
  },
  "InventoryDetails": {
    "type": "object",
    "example": {
      "178_0_0_0": {
        "unique_identifier": "178_0_0_0",
        "configuration_id": 0,
        "user_input_hash": "",
        "stock": [
          {
            "stock": 1,
            "batch_id": "",
            "warehouse_id": 1,
            "warehouse_name": "Central Warehouse",
            "warehouse_location_id": 3,
            "warehouse_location_code": "W001R001C01S01"
          }
        ],
        "total_quantity": 10
      }
    },
    "additionalProperties": {
      "$ref": "#/components/schemas/InventoryDetail"
    }
  },
  "Product": {
    "required": [
      "product_id",
      "total_quantity",
      "success"
    ],
    "properties": {
      "product_id": {
        "type": "string",
        "example": "1"
      },
      "product_ean": {
        "type": "string",
        "example": "10011001000101"
      },
      "product_number": {
        "type": "string",
        "example": "AB120923"
      },
      "total_quantity": {
        "type": "integer",
        "example": 10
      },
      "inventory_details": {
        "$ref": "#/components/schemas/InventoryDetails"
      },
      "success": {
        "type": "boolean",
        "example": true
      }
    },
    "type": "object"
  },
  "OrderCreateDTO": {
    "title": "OrderCreateResponse",
    "description": "Response schema returned after attempting to create an order. Provides identifiers, item details, and status information.",
    "properties": {
      "order_id": {
        "description": "Unique identifier assigned to the order by the Corenio system. This ID is used to track and manage the order internally.",
        "type": "integer",
        "example": 126
      },
      "external_order_id": {
        "description": "Optional identifier provided by an external system. Useful for correlating this order with external platforms such as e-commerce or ERP systems.",
        "type": "string",
        "example": "EXT-4589-XYZ"
      },
      "order_items": {
        "description": "List of items included in the order. Each item contains a product ID and the quantity ordered.",
        "type": "array",
        "items": {
          "properties": {
            "product_id": {
              "description": "Unique identifier of the product being ordered.",
              "type": "integer",
              "example": 1679
            },
            "amount": {
              "description": "Quantity of the product to be included in the order.",
              "type": "integer",
              "example": 1
            }
          },
          "type": "object"
        }
      },
      "format": {
        "description": "The response format. Typically set to 'json'.",
        "type": "string",
        "example": "json"
      },
      "success": {
        "description": "Indicates whether the order was created successfully. `true` means the operation succeeded, `false` indicates failure.",
        "type": "boolean",
        "example": true
      },
      "error_message": {
        "description": "Array of error messages, if any occurred during order creation. Empty if the operation was successful.",
        "type": "array",
        "items": {
          "type": "string"
        },
        "example": []
      }
    },
    "type": "object"
  },
  "OrderStatusDTO": {
    "title": "OrderStatusResponse",
    "description": "Response schema for checking the current status of an order. Includes status code, message, and success flag.",
    "properties": {
      "order_id": {
        "description": "Internal identifier of the order whose status is being queried. This is Corenio orderID.",
        "type": "string",
        "example": "123"
      },
      "is_credit_for": {
        "description": "If this order is a credit, it references the original order ID. Optional field.",
        "type": "string",
        "example": "456",
        "nullable": true
      },
      "credited_by": {
        "description": "If this order has been credited by another order, it references that order ID. Optional field.",
        "type": "string",
        "example": "789",
        "nullable": true
      },
      "success": {
        "description": "Indicates whether the status check was successful. 1 for success, 0 for failure.",
        "type": "integer",
        "example": 1
      },
      "status": {
        "description": "Current status of the order. This can be represented as an integer status code or a string such as 'shipped'.",
        "oneOf": [
          {
            "type": "integer",
            "example": 2
          },
          {
            "type": "string",
            "example": "shipped"
          }
        ]
      },
      "error-message": {
        "description": "Error message in case the status retrieval failed. Can be null if no error occurred.",
        "type": "string",
        "example": "No errors",
        "nullable": true
      }
    },
    "type": "object"
  }
}

Da un'integrazione di lavoro ad un uso quotidiano affidabile.

Utilizzare filtri mirati

La ricerca del prodotto accetta filtri tra cui nomi di marca, ID categoria, ID veicolo e ID KType.

Mantenere gli errori deliberatamente

Controllare lo stato HTTP per ogni endpoint. Un carrello che è già stato finalizzato può restituire 409, ad esempio. Non ripetere le operazioni di scrittura senza prima verificare se la modifica è stata elaborata.

Verificare l'impaginazione e l'accesso

Per pagina, la fonte menziona sia un valore iniziale di 0 che un valore predefinito di 1; confermare il comportamento nel test di integrazione.

Api + corenio

Pronto a collegare il flusso di lavoro?

Corenio offre API funzionalità per ogni modulo. Questo riferimento copre endpoint documentati pubblicamente. Discutere integrazioni dei moduli aggiuntivi e l'accesso di cui hai bisogno con noi.

Prenota una demo personalizzata