Inspirion API Integration Documentation

Table of Contents

  1. Overview
  2. Base URL
  3. Authentication
  4. Endpoints
  5. Multi-language Support
  6. Postman Usage Guide
  7. Examples

1. Overview

The Inspirion API provides a comprehensive suite of features designed to streamline product and inventory management. Users can leverage the API to access a variety of information, including:

This documentation supports integration across multiple languages to facilitate global operations and ensure seamless API usage.

This documentation provides instructions for integrating with the Inspirion API. It supports the following response languages:


2. Base URL

The base URL for the API is:

https://leoapi.inspirion.eu

3. Authentication

3.1 Authentication (Customer)

All requests require the X-Gateway-API-Key header with your API key. (Customer)

Example:

X-Gateway-API-Key: YOUR_API_KEY


3.2 Authentication (Partner)

All requests require the X-Gateway-API-Key-Partner header with your API key. (Partner)

Example:

X-Gateway-API-Key-Partner: YOUR_API_KEY

4. Endpoints

4.1.1 Products API - Version V1

a. List Products

Description: This API call retrieves a list of products, including detailed information about each product such as name, description, materials, branding options, country of origin, and available variants. It is useful for populating product catalogs, managing inventory, or displaying product details in an e-commerce platform.

Endpoint:

GET /api/v1/products

Parameters:

Example Request:

GET https://leoapi.inspirion.eu/api/v1/products?language=en&page=1&perPage=20

Example Response:

{
  "current_page": 1,
  "data": [
    {
      "name": "Kugelschreiber MODERN",
      "description": "<b>Kugelschreiber MODERN</b>: mit Druckmechanismus, silbermattem Kunststoff-Clip, schwarzschreibend",
      "sku": "3176377",
      "materials": ["Kunststoff"],
      "branding_methods": [
        {
          "position_title": "mittig auf dem weißen Bereich",
          "position_key": "centered_on_the_white_part",
          "size": "45x6mm",
          "print_technique_title": "Digitaldruck",
          "print_technique_key": "digital_direct_print",
          "print_area": "rectangle",
          "print_codes": "DP6",
          "handling_code": null,
          "pretreatment_code": null,
          "max_number_of_colors": "1",
          "default": false
        }
      ],
      "commodity_code": "9608 1092 000",
      "origin_country": "CN",
      "keywords": ["Kugelschreiber", "Stifte", "Büroaccessoires", "Schreibgeräte"],
      "total_variants": 2,
      "variants": [
        {
          "article_id": "56-1101115",
          "colour": "lila, weiß",
          "ean": "4035475097428",
          "size": {
            "length": "14.30",
            "length_unit": "cm"
          },
          "weight": {
            "net": "10.000",
            "gross": "12.000",
            "unit": "g"
          },
          "volume": {
            "volume": "42.000",
            "volume_unit": "cm³"
          },
          "ipu": {
            "ipu": 50,
            "length": "14.500",
            "length_unit": "cm",
            "width": "11.000",
            "width_unit": "cm",
            "height": "10.000",
            "height_unit": "cm",
            "volume": "0.0021",
            "volume_unit": "m³",
            "net_weight": "0.5000",
            "gross_weight": "0.5000",
            "weight_unit": "KG"
          },
          "pu": {
            "pu": 500,
            "length": "56.500",
            "length_unit": "cm",
            "width": "16.500",
            "width_unit": "cm",
            "height": "22.000",
            "height_unit": "cm",
            "volume": "0.0210",
            "volume_unit": "m³",
            "net_weight": "5.0000",
            "gross_weight": "5.8000",
            "weight_unit": "KG"
          },
          "images": [
            {
              "image_url": "https://media.inspirion.eu/72/56-1101115_MODERN_01.jpg"
            }
          ],
          "images_300": [
            {
              "image_url": "https://media.inspirion.eu/300/56-1101115_MODERN_01.jpg"
            }
          ]
        }
      ]
    }
  ],
  "pagination": {
    "currentPage": 1,
    "perPage": 20,
    "totalPages": 5,
    "totalItems": 100
  }
}

4.1.2 Products API - Version V2

a. List Products

Description: This API call retrieves a comprehensive list of all available products in a single request, without pagination. Each product entry includes detailed information such as the product name, description, materials, branding options, country of origin, and available variants. This endpoint is ideal for use cases such as populating full product catalogs, synchronizing inventory systems, or displaying detailed product information within e-commerce platforms.

Endpoint:

GET /api/v2/products

Parameters:

Example Request:

GET https://leoapi.inspirion.eu/api/v2/products?language=de

Example Response:

[
    {
        "name": "Emaille Becher RETRO CUP",
        "description": "<b>Emaille Becher RETRO CUP</b>: mit Henkel, außen farbig und innen weiß, Füllmenge ca. 350 ml",
        "sku": "3227398",
        "materials": [
            "Metall",
            "Emaille"
        ],
        "brand": null,
        "commodity_code": "7323 9400 000",
        "origin_country": "CN",
        "pictograms": [
            {
                "text": "Lasergravur",
                "print_export_marker": "l",
                "content": "12cm² LR12+H2 (1)",
                "type": "print",
                "image_url": "https://media.inspirion.eu/GetImages/GetTextImage.aspx?fontfamily=Bedruckungsicons_2020&fontsize=100&fontcolor=111111&fontbold=false&text=l"
            }
        ],
        "additional_pictograms": "",
        "additional_informations": "",
        "prodh": null,
        "mgvr3": null,
        "keywords": [
            "Becher",
            "Tassen",
            "Kaffee-Accessoires",
            "Haushaltsartikel",
            "Küchenutensilien",
            "Tee-Accessoires",
            "Kaffeebecher"
        ],
        "total_variants": 4,
        "details_images": [],
        "details_images_300": [],
        "variants": [
            {
                "article_id": "56-0304420",
                "colour": "schwarz, weiß",
                "ean": "4035475082745",
                "size": {
                    "length": null,
                    "length_unit": null,
                    "width": null,
                    "width_unit": null,
                    "height": "8.00",
                    "height_unit": "cm",
                    "diameter": "9.00",
                    "diameter_unit": "cm",
                    "unit": null
                },
                "weight": {
                    "net": "90.000",
                    "gross": "98.000",
                    "unit": "g"
                },
                "volume": {
                    "volume": "792.657",
                    "volume_unit": "cm³"
                },
                "ipu": {
                    "ipu": 6,
                    "length": "27.300",
                    "length_unit": "cm",
                    "width": "28.000",
                    "width_unit": "cm",
                    "height": "8.500",
                    "height_unit": "cm",
                    "volume": "0.0048",
                    "volume_unit": "m³",
                    "net_weight": "0.5400",
                    "gross_weight": "0.5400",
                    "weight_unit": "kg"
                },
                "pu": {
                    "pu": 60,
                    "length": "37.500",
                    "length_unit": "cm",
                    "width": "28.500",
                    "width_unit": "cm",
                    "height": "44.500",
                    "height_unit": "cm",
                    "volume": "0.0476",
                    "volume_unit": "m³",
                    "net_weight": "5.4000",
                    "gross_weight": "5.9000",
                    "weight_unit": "kg"
                },
                "pallet": {
                    "pal": 1080,
                    "length": "120.000",
                    "length_unit": "cm",
                    "width": "80.000",
                    "width_unit": "cm",
                    "height": "131.000",
                    "height_unit": "cm",
                    "volume": "0.8561",
                    "volume_unit": "m³"
                },
                "images": [
                    {
                        "image_url": "https://media.inspirion.eu/72/56-0304420_RETRO-CUP_01.jpg"
                    }
                ],
                "images_300": [
                    {
                        "image_url": "https://media.inspirion.eu/300/56-0304420_RETRO-CUP_01.jpg"
                    }
                ]
            }
        ]
    }
]

4.2.1 Product Prices API - Version V1

a. Show Prices

Description: This API call retrieves price information for all products. This includes client specific prices and catalogue prices.

Endpoint:

GET /api/v1/pricelist

Example Request:

GET https://leoapi.inspirion.eu/api/v1/pricelist?language=en

Example Response:

{
    "current_page": 1,
    "data": [
        {
            "article_id": "56-0381020",
            "pricelist": [
                {
                    "price": "5.90",
                    "catalog_price": "6.50",
                    "currency": "EUR"
                }
            ]
        },
        {
            "article_id": "56-0403193",
            "pricelist": [
                {
                    "price": "1.00",
                    "catalog_price": "1.25",
                    "currency": "EUR"
                }
            ]
        }
    ],
    "first_page_url": "https://leoapi-test.inspirion.eu/api/v1/pricelist?language=en&page=1",
    "from": 1,
    "last_page": 1,
    "last_page_url": "https://leoapi-test.inspirion.eu/api/v1/pricelist?language=en&page=1",
    "links": [
        {
            "url": null,
            "label": "&laquo; Previous",
            "active": false
        },
        {
            "url": "https://leoapi-test.inspirion.eu/api/v1/pricelist?language=en&page=1",
            "label": "1",
            "active": true
        },
        {
            "url": null,
            "label": "Next &raquo;",
            "active": false
        }
    ],
    "next_page_url": null,
    "path": "https://leoapi-test.inspirion.eu/api/v1/pricelist",
    "per_page": 50,
    "prev_page_url": null,
    "to": 50,
    "total": 2
}

4.2.2 Product Prices API - Version V2

a. Show Prices

Description: This API call retrieves price information for all products. This includes client specific prices and catalogue prices.

Endpoint:

GET /api/v2/pricelist

Example Request:

GET https://leoapi.inspirion.eu/api/v2/pricelist?language=en

Example Response:

[
    {
        "article_id": "56-0381020",
        "pricelist": [
            {
                "price": "5.90",
                "catalog_price": "6.50",
                "currency": "EUR"
            }
        ]
    },
    {
        "article_id": "56-0402335",
        "pricelist": [
            {
                "price": "0.75",
                "catalog_price": "0.87",
                "currency": "EUR"
            }
        ]
    }
]

4.3 Stock API

a. List Stock

Description: This API call retrieves stock information for products across various regions and warehouses. Users can expect detailed stock levels for different geographical locations, warehouse distributions, and future inventory arrivals. This is useful for inventory management, logistics planning, and ensuring availability in specific regions.

Endpoint:

GET /api/v1/stock

Example Request:

GET https://leoapi.inspirion.eu/api/v1/stock

Example Response:

{
    "article_id": "56-0101180",
    "stock_floating": 1968,
    "stock_in_production": 0,
    "stock_dach": 8580,
    "stock_uk": 8580,
    "stock_scandinavia": 8580,
    "stock_spain": 8580,
    "stock_greece": 8580,
    "stock_eastern_europe": 8580,
    "stock_france": 8580,
    "stock_italy": 8580,
    "stock_czechia": 8580,
    "stock_netherlands": 8580,
    "stock_poland": 8580,
    "stock_hungary": 8580,
    "warehouses": {
        "germany": 8580,
        "poland": 0,
        "hungary": 0
    },
    "inventory_arrival": [
        {
            "arrival_date": "2025-01-17 00:00:00",
            "arrival_quantity": 1968
        }
    ]
}

4.4 Print Prices API

a. List Print Prices

Description: This API call retrieves pricing details for product prints, including setup costs, flat rates, and scaled pricing for various order quantities. The information provided is vital for calculating print costs, especially for different order sizes and configurations. This endpoint supports multiple pricing tiers and handles cases where additional colors impact pricing.

Endpoint:

GET /api/v1/print-prices

Example Request:

GET https://leoapi.inspirion.eu/api/v1/print-prices

Example Response:

{
    "printcode": "D4",
    "name": "D4 Doming bis 4 cm²",
    "currency": "EUR",
    "setup": "30.00",
    "flatRateStart": 1,
    "flatRateEnd": 49,
    "flatRate": "99.04",
    "scale1": 50,
    "price1": "1.98",
    "scale1AdditionalColor": null,
    "price1AdditionalColor": null,
    "scale2": 100,
    "price2": "1.91",
    "scale2AdditionalColor": null,
    "price2AdditionalColor": null,
    "scale3": 250,
    "price3": "1.52",
    "scale3AdditionalColor": null,
    "price3AdditionalColor": null,
    "scale4": 500,
    "price4": "1.30",
    "scale4AdditionalColor": null,
    "price4AdditionalColor": null,
    "scale5": 1000,
    "price5": "1.24",
    "scale5AdditionalColor": null,
    "price5AdditionalColor": null,
    "scale6": 2500,
    "price6": "1.21",
    "scale6AdditionalColor": null,
    "price6AdditionalColor": null,
    "scale7": 5000,
    "price7": "1.17",
    "scale7AdditionalColor": null,
    "price7AdditionalColor": null,
    "scale8": 10000,
    "price8": "1.13",
    "scale8AdditionalColor": null,
    "price8AdditionalColor": null,
    "scale9": null,
    "price9": null,
    "scale9AdditionalColor": null,
    "price9AdditionalColor": null,
    "flatRateStartAdditionalColor": null,
    "flatRateEndAdditionalColor": null,
    "flatRateAdditionalColor": null
}

4.5 Price Calculation API

a. Calculate Price

Description: This API call calculates the price for a specific product based on its articleId. The calculation also shows the print price based on the provided print_code, volume, colours, print position and shipping country.

Endpoint:

POST /api/v1/price-calculation

Body Parameters:


4.6 Deleted Products API

a. List Deleted Products

Description: This API call retrieves a list of product IDs that have been marked as deleted from the system. This is useful for ensuring inventory and catalog data remain up-to-date by identifying products that are no longer available. The response includes an array of product IDs for easy integration with other systems.

Endpoint:

GET /api/v1/deleted-products

Example Request:

GET https://leoapi.inspirion.eu/api/v1/deleted-products

Example Response:

[
    "56-0104112",
    "56-0101131",
    "56-0101132",
    "56-0107002"
]

4.7 Company API

a. Get Company Details

Description: This API call retrieves detailed information about a company, including its name, address, contact details, and additional metadata. It is designed for users who need to fetch company-related data for reporting, integration, or verification purposes.

Endpoint:

GET /api/v1/company

Example Request:

GET https://leoapi.inspirion.eu/api/v1/company

Example Response:

{
    "name": "ABC GmbH",
    "street": "ABC street 123",
    "city": "Hamburg",
    "country": "DE",
    "zip": "22083",
    "contact_name": "AAA",
    "contact_surname": "BBB",
    "contact_email": "AAA.BBB@ABC.de",
    "products_price_list": "IG",
    "print_price_list": "DE"
}

4.8 Shipping API

a. Calculate Shipping

Description: This API call retrieves all relevant shipping information about delivery costs to a specific country.

Endpoint:

POST /api/v1/shipping

Body Parameters:

Example Request:

POST https://leoapi.inspirion.eu/api/v1/shipping

Example Response:

{
    "product_cost": "18.00",
    "shipping_cost": "13.80",
    "currency": "EUR",
    "shipping_message": ""
}

4.9 Materials API

Description: This API call retrieves all the materials which are used in an article.

a. List Materials

Endpoint:

GET /api/v1/materials

Example Request:

GET https://leoapi.inspirion.eu/api/v1/materials

Example Response:

{
    "article_id": "56-0101108",
    "materials": [
        "Metal",
        "Polyester"
    ]
}

4.10 Datasheets API

a. Get Datasheet

Description: This API call generates a PDF data sheet for a specific product based on its articleId. The data sheet includes detailed product specifications, features, and other relevant information, making it ideal for use in marketing, sales, or customer inquiries. The generated PDF is returned as a downloadable file.

Endpoint:

GET /v1/data-sheet/{articleId}

Example Request:

GET https://leoapi.inspirion.eu/api/v1/data-sheet/56-0101051

Response:

Content Type: application/pdf
The response is a binary stream of the PDF file containing the product data sheet. The file can be directly downloaded or displayed in a PDF viewer.

This endpoint simplifies the generation of professional, shareable data sheets for products, ensuring accurate and consistent product information is readily accessible.


4.11 SVHC API

a. Show SVHC in articles

Description: This API call retrieves all SVHC which are present in a product. In case an article does not contain any SVHC, the response will say so.

Endpoint:

GET /api/v1/svhc/{articleId}

Example Request:

GET https://leoapi.inspirion.eu/api/v1/svhc/58-8110002

Example Response:

{
    "article_id": "58-8110002",
    "contains_the_following_svhc": [
        "Lead"
    ]
}

4.12 Print templates

a. Show print templates

Description: This API call retrieves all possible print positions on all articles with their corresponding name and an url to the actual picture, which shows the print position.

Endpoint:

GET /api/v1/print-templates

Example Request:

GET https://leoapi.inspirion.eu/api/print-templates

Example Response:

{
      "article_id": "56-0101051",
      "print_position": "on_panel_1",
      "image_url": "https://media.inspirion.eu/print-template/56-0101051_POCKET_z_Panel-A_S-T-DT-RT.jpg"
}

4.13 Create order via API

a. New order without print

Description: Creates a new order with customer and delivery details along with the list of products to be ordered.

Endpoint:

POST /api/v1/create-order

Example Request:

POST https://leoapi.inspirion.eu/api/v1/create-order

Example Request:

{
    "name": "Johnny Inspirion",
    "email": "johnny@inspirion.eu",
    "order_number": "ABC-12345",
    "comment": "Please deliver as soon as possible.",
    "delivery_address": {
        "name": "Johnny Inspirion",
        "company": "Inspirion GmbH",
        "street": "Inspirionstraße",
        "number": "2",
        "postcode": "27367",
        "city": "Sottrum",
        "country": "DE"
    },
    "products": [
        {  
            "article_id": "56-0101051",
            "volume": 50
        }
    ]
}

Request Parameters:

Parameter Type Required Description
name string (30 char) Yes Full name of an employee from Inspirion's client company handeling the order
email string (39 char) Yes Email address of an employee from Inspirion's client company handeling the order
order_number string (39 char) No Customer order number
comment string No Customer comment
delivery_address object Yes Address details for order delivery
delivery_address.name string (30 char) Yes Recipient's name
delivery_address.company string (30 char) No Company name (if applicable)
delivery_address.street string (30 char) Yes Street name
delivery_address.number string (10 char) Yes Street number
delivery_address.postcode string (10 char) Yes Postal code
delivery_address.city string (30 char) Yes City
delivery_address.country string (30 char) Yes Country code (ISO 3166-1 alpha-2 format)
products array Yes List of products to be ordered
products[].article_id string (16 char) Yes Unique identifier for the product
products[].volume integer (10 char) Yes Quantity of the product

Example Response: Success Status Code: 200 Created

{
    "order_id": "123456",
    "status": "Order created successfully"
}

Error 400 Bad Request - Invalid request data

{
    "error": "Invalid email format"
}

500 Internal Server Error - Server error

{
    "error": "An unexpected error occurred"
}

Notes


4.14 Delivery Time

a. Get Delivery Time

Description: This API call provides basic delivery time information in workdays, including estimated timeframes for standard and printed deliveries. The Delivery Time refers to the time the goods leave Inspirion's warehouse.

Endpoint:

GET /api/v1/delivery-time

Example Request:

GET https://leoapi.inspirion.eu/api/v1/delivery-time

Example Response:

{
    "article_id": "56-0381020",
    "delivery": {
        "no-print": "1 working day",
        "print": "7 working days after approval of the print file"
    }
}

4.15 Products Categories

a. Get Products Categories

Description: This API call retrieves the available product categories from Inspirion's catalog, allowing clients to classify and filter items based on their assigned category.

Endpoint:

GET /api/v1/products/categories

Example Request:

GET https://leoapi.inspirion.eu/api/v1/products/categories

Example Response:

[
    {
        "articleId": "56-0381020",
        "categories": [
            {
                "parent_category": "sports-and-recreation",
                "parent_category_translation": "Sport i rekreacja",
                "category": "biking-cycling-accessories",
                "category_translation": "Rowerowe akcesoria"
            }
        ]
    }
]

5. Multi-language Support

You can specify the response language by including the language parameter in your requests.

Example:

GET https://leoapi.inspirion.eu/api/v1/products?language=fr

6. Postman Usage Guide

6.1 Import the Postman Collection

6.2 Set Environment Variables

Variable Description
base_url API base URL (https://leoapi.inspirion.eu)
gateway_api_key Your API key
lang Language for responses
country Country for responses
articleId Article ID
volume Volume
printcode Printcode
printPosition Print Position
colours Colours

7. Examples

7.1 PHP

$curl = curl_init();
curl_setopt_array($curl, [
    CURLOPT_URL => "https://leoapi.inspirion.eu/api/v1/products?language=en",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ["X-Gateway-API-Key: YOUR_API_KEY"],
]);
$response = curl_exec($curl);
curl_close($curl);
echo $response;

7.2 Python

import requests
headers = {"X-Gateway-API-Key": "YOUR_API_KEY"}
response = requests.get("https://leoapi.inspirion.eu/api/v1/products", headers=headers)
print(response.json())

7.3 Node.js

const axios = require('axios');
axios.get('https://leoapi.inspirion.eu/api/v1/products?language=en', {
  headers: {
    'X-Gateway-API-Key': 'YOUR_API_KEY'
  }
}).then(response => {
  console.log(response.data);
}).catch(error => {
  console.error(error);
});

7.4 Laravel

use Illuminate\Support\Facades\Http;

$response = Http::withHeaders([
    'X-Gateway-API-Key' => 'YOUR_API_KEY',
])->get('https://leoapi.inspirion.eu/api/v1/products', [
    'language' => 'en'
]);

echo $response->body();

7.5 C#

using (HttpClient client = new HttpClient())
{
	client.DefaultRequestHeaders.Add("X-Gateway-API-Key", "YOUR_API_KEY");
	HttpResponseMessage response = await client.GetAsync("https://leoapi.inspirion.eu/api/v1/products?language=en");

	if (response.IsSuccessStatusCode)
	{
		Console.WriteLine(await response.Content.ReadAsStringAsync());
	}
	else
	{
		Console.WriteLine($"Error: {response.StatusCode}");
	}
}

Notes