API Reference

Here you can read all references to integrate Wurth Api.

Wurth clients API let you implement a fast automation you need for your business. Contact us to get access and crendentials, then you can start creating your own business logic system.

The APIs return always a response with information about success or failure with at least two parameters:

  • result: 'ok' on success, 'ko' on failure.
  • error: empty string on success, string with relative error on failure.

API Reference

Every Wurth API call uses the same endpoint prefix:

https://api.wuerth.it/api/v1

Authorization

You need to pass your Account relative Bearer Token on every call you make to Wurth API

We provide two different tokens:

  • Test API Token: this is the sandbox token (every POST, PUT, PATCH, DELETE will not affect your production data).
  • Production API Token: this is the production token.

Authorization
curl 'https://wurthapi.me/api/v1/get-version' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Authorization
import requests
endpoint = "https://api.wuerth.it/api/v1/get-version"
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint,headers=headers).json()
Authorization
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';

$ch = curl_init('https://api.wuerth.it/api/v1/get-version');

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Authorization
String url = "https://api.wuerth.it/api/v1/get-version";

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();

return response.toString();

Responses

Wurth API completely fits the HTTP verb.

Every response return a status code based on the request success or failure.

API's endpoint return anyway a JSON response.

Response Types
200 - OK Standard response for successful HTTP requests
400 - Bad Request The server cannot or will not process the request due to an apparent client error
401 - Unauthorized You are not authorized (maybe bad token or disabled account)
404 - Not Found This can happen if you try to execute a GET on a not existing resource
429 - Too Many Requests This can happen also if our servers are full loaded so we can't serve your request
500, 502, 503, 504 - Server Errors All this errors are not your fault but they are caused by our servers

Error handling

You can face different kind of errors.

  • 5xx status codes: these errors are caused by our servers. We suggest you to implement queues with failover for your critical API calls.
  • 4xx status code: Resource not found. You will get a JSON response anyway that better describe the error and result.

Another important issue is about 5xx status codes and/or servers problems. When you call APIs that are critical for your business and they have to be executed anyway, we suggest you to create queues to handling this kind of requests with a good failover. This is just to be sure that critical calls has been successful or they will be executed later.

4xx sample response:

sample endpoint: /api/v1/get-product/{product_no}

{
    "result": "ko",
    "error": "PRODUCT_NOT_FOUND",
    "version": "1"
}

Error Types

Here you can find all error messages that you can find in the JSON error value:

{
    "result": "ko",
    "error": "ERROR_MESSAGE",
}
Error message Reason
USER_DISABLED_OR_NOT_FOUND The user is disabled or does not exists
NOT_SECURE_PROTOCOL You are calling an endpoint without using https protocol (our APIs works only on https protocol for security reason)
VALIDATION_GET_DATA_FAILED You are sending malformed GET or Query String data to the endpoint
VALIDATION_POST_DATA_FAILED You are sending malformed POST data to the endpoint
INVALID_TOKEN Your used token is invalid
USER_DISABLED_OR_INVALID_TOKEN Your used token is invalid or the relative user is disabled
ARTICLE_NOT_FOUND You are searching for an article that does not exists
ARTICLE_NOT_FOUND_OR_MALFORMED_ARTICLENO You are searching for an article that does not exists or malformed article number
PRODUCT_NOT_FOUND You are searching for an article that does not exists
USER_HAVE_NOT_INVOICES_POS_DIR User have not an invoices dir
USER_INVOICES_POS_DIR_IS_EMPTY User invoices directory is empty
ORDER_NOT_FOUND You are searching for an order that does not exists
INVOICE_NOT_FOUND You are searching for an invoice that does not exists
TRANSPORT_DELIVERY_DOCUMENT_NOT_FOUND You are searching for a transport delivery document that does not exists

Invoices data and download

Use these APIs to retrieve informations, data and to download your invoices (if allowed by your account).

You need to pass your Account relative Bearer Token on every call you make to this API

API Reference

Every Wurth API call uses the same endpoint prefix:

https://api.wuerth.it/api/v1

Get invoice infos

Use this APIs to retrieve invoice infos with every article details.

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every URL parameters must be url encoded!

  • billingDocumentNo (required): The Wuerth billing document number

Note: you can use the "num_billingdocument" value as billingDocumentNo parameter returned from the "Get order infos" API.

API Reference

Method: GET

https://api.wuerth.it/api/v1/invoice/{billingDocumentNo}
Example
curl 'https://api.wuerth.it/api/v1/invoice/4277189651' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "invoice": {
        "billingDocumentNo": "4277189651",
        "invoicePositions": [
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "1",
                "dat_orderentry": "2020-02-11 00:00:00",
                "num_order": "2093486753",
                "num_orderitem": "30",
                "num_customerorder": "20720820",
                "ids_customer": "511170754",
                "dsc_product": "464180642",
                "dsc_material": "464180642 090   50",
                "dsc_presentation": "090",
                "dsc_packagesize": "00050",
                "amt_netvalue": "8.31",
                "amt_freightcost": "0",
                "qty_order": "12",
                "qty_invoice": "12",
                "amt_kilonetweight": "1.96",
                "transportdeliverynumber": "8331481022"
            },
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "2",
                "dat_orderentry": "2020-02-28 00:00:00",
                "num_order": "2094763235",
                "num_orderitem": "10",
                "num_customerorder": "19167505",
                "ids_customer": "511170754",
                "dsc_product": "024701260",
                "dsc_material": "024701260 092  100",
                "dsc_presentation": "092",
                "dsc_packagesize": "00100",
                "amt_netvalue": "31.5",
                "amt_freightcost": "0",
                "qty_order": "100",
                "qty_invoice": "100",
                "amt_kilonetweight": "4.62",
                "transportdeliverynumber": "8331264358"
            },
            ...
        ]
    }
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/invoice/{billingDocumentNo}
Example
import requests
import urllib
billingDocumentNo = "4277189651"
urllib.quote_plus(orderNo)
endpoint = "https://api.wuerth.it/api/v1/invoice/" + billingDocumentNo
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint,headers=headers).json()
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "invoice": {
        "billingDocumentNo": "4277189651",
        "invoicePositions": [
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "1",
                "dat_orderentry": "2020-02-11 00:00:00",
                "num_order": "2093486753",
                "num_orderitem": "30",
                "num_customerorder": "20720820",
                "ids_customer": "511170754",
                "dsc_product": "464180642",
                "dsc_material": "464180642 090   50",
                "dsc_presentation": "090",
                "dsc_packagesize": "00050",
                "amt_netvalue": "8.31",
                "amt_freightcost": "0",
                "qty_order": "12",
                "qty_invoice": "12",
                "amt_kilonetweight": "1.96",
                "transportdeliverynumber": "8331481022"
            },
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "2",
                "dat_orderentry": "2020-02-28 00:00:00",
                "num_order": "2094763235",
                "num_orderitem": "10",
                "num_customerorder": "19167505",
                "ids_customer": "511170754",
                "dsc_product": "024701260",
                "dsc_material": "024701260 092  100",
                "dsc_presentation": "092",
                "dsc_packagesize": "00100",
                "amt_netvalue": "31.5",
                "amt_freightcost": "0",
                "qty_order": "100",
                "qty_invoice": "100",
                "amt_kilonetweight": "4.62",
                "transportdeliverynumber": "8331264358"
            },
            ...
        ]
    }
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/invoice/{billingDocumentNo}
Example
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';
$billingDocumentNo = rawurlencode('4277189651');

$ch = curl_init('https://api.wuerth.it/api/v1/invoice/' . $billingDocumentNo);

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "invoice": {
        "billingDocumentNo": "4277189651",
        "invoicePositions": [
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "1",
                "dat_orderentry": "2020-02-11 00:00:00",
                "num_order": "2093486753",
                "num_orderitem": "30",
                "num_customerorder": "20720820",
                "ids_customer": "511170754",
                "dsc_product": "464180642",
                "dsc_material": "464180642 090   50",
                "dsc_presentation": "090",
                "dsc_packagesize": "00050",
                "amt_netvalue": "8.31",
                "amt_freightcost": "0",
                "qty_order": "12",
                "qty_invoice": "12",
                "amt_kilonetweight": "1.96",
                "transportdeliverynumber": "8331481022"
            },
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "2",
                "dat_orderentry": "2020-02-28 00:00:00",
                "num_order": "2094763235",
                "num_orderitem": "10",
                "num_customerorder": "19167505",
                "ids_customer": "511170754",
                "dsc_product": "024701260",
                "dsc_material": "024701260 092  100",
                "dsc_presentation": "092",
                "dsc_packagesize": "00100",
                "amt_netvalue": "31.5",
                "amt_freightcost": "0",
                "qty_order": "100",
                "qty_invoice": "100",
                "amt_kilonetweight": "4.62",
                "transportdeliverynumber": "8331264358"
            },
            ...
        ]
    }
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/invoice/{billingDocumentNo}
Example
String billingDocumentNo = URLEncoder.encode("4277189651", "UTF-8").replace("+", "%20");

String url = "https://api.wuerth.it/api/v1/invoice/" + billingDocumentNo;

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
		new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
	response.append(inputLine);
}
in.close();

return response.toString();
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "invoice": {
        "billingDocumentNo": "4277189651",
        "invoicePositions": [
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "1",
                "dat_orderentry": "2020-02-11 00:00:00",
                "num_order": "2093486753",
                "num_orderitem": "30",
                "num_customerorder": "20720820",
                "ids_customer": "511170754",
                "dsc_product": "464180642",
                "dsc_material": "464180642 090   50",
                "dsc_presentation": "090",
                "dsc_packagesize": "00050",
                "amt_netvalue": "8.31",
                "amt_freightcost": "0",
                "qty_order": "12",
                "qty_invoice": "12",
                "amt_kilonetweight": "1.96",
                "transportdeliverynumber": "8331481022"
            },
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "2",
                "dat_orderentry": "2020-02-28 00:00:00",
                "num_order": "2094763235",
                "num_orderitem": "10",
                "num_customerorder": "19167505",
                "ids_customer": "511170754",
                "dsc_product": "024701260",
                "dsc_material": "024701260 092  100",
                "dsc_presentation": "092",
                "dsc_packagesize": "00100",
                "amt_netvalue": "31.5",
                "amt_freightcost": "0",
                "qty_order": "100",
                "qty_invoice": "100",
                "amt_kilonetweight": "4.62",
                "transportdeliverynumber": "8331264358"
            },
            ...
        ]
    }
}

Check latest invoices

Use it to check if you can call the download-latest-invoices to download a zip with your updated invoices

If "canDownload" is true: you can use the "download-latest-invoices" API to download the zip with your latest invoices
If "canDownload" is false: your account is not allowed to download invoices.
Possible reasons:
  • Your account is disabled or not found
  • You account type is not allowed to use these APIs. (You can still request the access)

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every URL parameters must be url encoded!

API Reference

Method: GET

https://api.wuerth.it/api/v1/check-latest-invoices
Example
curl 'https://api.wuerth.it/api/v1/check-latest-invoices' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"canDownload": true,
	"downloadUrl": "http://wurthapi.me/api/v1/download-latest-invoices",
	"downloadUrlBearerTokenRequired": true
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/check-latest-invoices
Example
import requests
import urllib
endpoint = "https://api.wuerth.it/api/v1/check-latest-invoices"
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint,headers=headers).json()
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"canDownload": true,
	"downloadUrl": "http://wurthapi.me/api/v1/download-latest-invoices",
	"downloadUrlBearerTokenRequired": true
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/check-latest-invoices
Example
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';

$ch = curl_init('https://api.wuerth.it/api/v1/check-latest-invoices');

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"canDownload": true,
	"downloadUrl": "http://wurthapi.me/api/v1/download-latest-invoices",
	"downloadUrlBearerTokenRequired": true
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/check-latest-invoices
Example
String url = "https://api.wuerth.it/api/v1/check-latest-invoices";

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
		new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
	response.append(inputLine);
}
in.close();

return response.toString();
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"canDownload": true,
	"downloadUrl": "http://wurthapi.me/api/v1/download-latest-invoices",
	"downloadUrlBearerTokenRequired": true
}

Download latests invoices

Use it to download a zip file with your latest invoices updated. The zip file is served as a classic binary file response that you can use to save the file wherever you want.

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every URL parameters must be url encoded!

API Reference

Method: GET

https://api.wuerth.it/api/v1/download-latest-invoices
Example
curl 'https://api.wuerth.it/api/v1/download-latest-invoices' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result

This API does not return a JSON response. There are just two returning cases:

  • HTTP response code 200: BINARY ZIP FILE STREAM
  • HTTP response code 404: EMPTY BODY RESPONSE

BINARY ZIP FILE STREAM (this method does not return a JSON response)
API Reference

Method: GET

https://api.wuerth.it/api/v1/download-latest-invoices
Example
import requests

url = 'https://api.wuerth.it/api/v1/download-latest-invoices'

headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

req = requests.get(url, headers=headers)

with open('./my_latest_invoices.zip', 'wb') as file:
        file.write(req.content)
Result
BINARY ZIP FILE STREAM (this method does not return a JSON response)
API Reference

Method: GET

https://api.wuerth.it/api/v1/download-latest-invoices
Example
$context = stream_context_create([
    'http' => [
        'header'  => "Authorization: Bearer TEST-agVd3VydGg=gaV"
    ]
]);

$data = file_get_contents('https://api.wuerth.it/api/v1/download-latest-invoices', false, $context);

file_put_contents('my_latest_invoices.zip', $data);
Result
BINARY ZIP FILE STREAM (this method does not return a JSON response)
API Reference

Method: GET

https://api.wuerth.it/api/v1/download-latest-invoices
Example
boolean downloadResult = false;

String fileName = "my_latest_invoices.zip";

String endpointUrl = "https://api.wuerth.it/api/v1/download-latest-invoices";

final int BUFFER_SIZE = 4096;

URL obj = new URL(endpointUrl);
HttpURLConnection httpConn = (HttpURLConnection) obj.openConnection();

httpConn.setRequestMethod("GET");

httpConn.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = httpConn.getResponseCode();

System.out.println("\nSending 'GET' request to URL : " + endpointUrl);
System.out.println("Response Code : " + responseCode);

if (responseCode != HttpURLConnection.HTTP_OK) {
	return downloadResult;
}

String disposition = httpConn.getHeaderField("Content-Disposition");
String contentType = httpConn.getContentType();
int contentLength = httpConn.getContentLength();

System.out.println("Content-Type = " + contentType);
System.out.println("Content-Disposition = " + disposition);
System.out.println("Content-Length = " + contentLength);
System.out.println("fileName = " + fileName);
System.out.println("filePath = " + "./" + fileName);

InputStream inputStream = httpConn.getInputStream();

FileOutputStream outputStream = new FileOutputStream("./" + fileName);

int bytesRead = -1;
byte[] buffer = new byte[BUFFER_SIZE];
while ((bytesRead = inputStream.read(buffer)) != -1) {
	outputStream.write(buffer, 0, bytesRead);
}

outputStream.close();
inputStream.close();

downloadResult = true;

httpConn.disconnect();

return downloadResult;
Result
BINARY ZIP FILE STREAM (this method does not return a JSON response)

Products info data

Use these APIs to retrieve informations about products, articles and prices.

You need to pass your Account relative Bearer Token on every call you make to this API

API Reference

Every Wurth API call uses the same endpoint prefix:

https://api.wuerth.it/api/v1

Get product

Use these APIs to retrieve information about a product passed as argument.

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every product may have multiple available articles.

API Reference

Method: GET

https://api.wuerth.it/api/v1/get-product/{product_no}
Example
curl 'https://api.wuerth.it/api/v1/get-product/07023220' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"product": {
		"productno": "07023220",
		"articles": [
			{
				"articleno": "07023220  061    1",
				"longdescription": "Trapano a percussione SB 13-XE",
				"productno": "07023220",
				"alternative_article": null,
				"wuerth_classification_name": null,
				"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
				"eancode": "4038898328650",
				"statusid": "5",
				"status": "Active",
				"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
				...
			},
			{
				"articleno": "07023220  989    1",
				"longdescription": "Trapano a percussione SB 13-XE",
				"productno": "07023220",
				"alternative_article": null,
				"wuerth_classification_name": null,
				"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
				"eancode": "4048539244812",
				"statusid": "5",
				"status": "Active",
				"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
				...
			}
		]
	}
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-product/{product_no}
Example
import requests
import urllib
productno = "07023220"
urllib.quote_plus(productno)
endpoint = "https://api.wuerth.it/api/v1/get-product/" + productno
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint,headers=headers).json()
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"product": {
		"productno": "07023220",
		"articles": [
			{
				"articleno": "07023220  061    1",
				"longdescription": "Trapano a percussione SB 13-XE",
				"productno": "07023220",
				"alternative_article": null,
				"wuerth_classification_name": null,
				"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
				"eancode": "4038898328650",
				"statusid": "5",
				"status": "Active",
				"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
				...
			},
			{
				"articleno": "07023220  989    1",
				"longdescription": "Trapano a percussione SB 13-XE",
				"productno": "07023220",
				"alternative_article": null,
				"wuerth_classification_name": null,
				"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
				"eancode": "4048539244812",
				"statusid": "5",
				"status": "Active",
				"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
				...
			}
		]
	}
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-product/{product_no}
Example
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';
$productNo = rawurlencode('07023220');

$ch = curl_init('https://api.wuerth.it/api/v1/get-product/' . $productNo);

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"product": {
		"productno": "07023220",
		"articles": [
			{
				"articleno": "07023220  061    1",
				"longdescription": "Trapano a percussione SB 13-XE",
				"productno": "07023220",
				"alternative_article": null,
				"wuerth_classification_name": null,
				"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
				"eancode": "4038898328650",
				"statusid": "5",
				"status": "Active",
				"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
				...
			},
			{
				"articleno": "07023220  989    1",
				"longdescription": "Trapano a percussione SB 13-XE",
				"productno": "07023220",
				"alternative_article": null,
				"wuerth_classification_name": null,
				"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
				"eancode": "4048539244812",
				"statusid": "5",
				"status": "Active",
				"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
				...
			}
		]
	}
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-product/{product_no}
Example
String productno = URLEncoder.encode("07023220", "UTF-8").replace("+", "%20");

String url = "https://api.wuerth.it/api/v1/get-product/" + productno;

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
		new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
	response.append(inputLine);
}
in.close();

return response.toString();
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"product": {
		"productno": "07023220",
		"articles": [
			{
				"articleno": "07023220  061    1",
				"longdescription": "Trapano a percussione SB 13-XE",
				"productno": "07023220",
				"alternative_article": null,
				"wuerth_classification_name": null,
				"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
				"eancode": "4038898328650",
				"statusid": "5",
				"status": "Active",
				"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
				...
			},
			{
				"articleno": "07023220  989    1",
				"longdescription": "Trapano a percussione SB 13-XE",
				"productno": "07023220",
				"alternative_article": null,
				"wuerth_classification_name": null,
				"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
				"eancode": "4048539244812",
				"statusid": "5",
				"status": "Active",
				"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
				...
			}
		]
	}
}

Search product

Use it to search a product by term, category or other parameters. Search results can be paginated.
This API will give you the relative articles for every product matching your filters.

Set filters with query string at the end of API Endpoint

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every product may have multiple available articles.

Filters: (query string parameters)

  • term (required):The search term
  • page:The pagination parameter (min: 1) (default: 1)
  • eancode:Filter by eancode
  • cat_level1:Category level 1 name
  • cat_level1_id:Category level 1 ID
  • cat_level2:Category level 2 name
  • cat_level2_id:Category level 2 ID
  • cat_level3:Category level 3 name
  • cat_level3_id:Category level 3 ID
  • cat_level4:Category level 4 name
  • cat_level4_id:Category level 4 ID
  • cat_level5:Category level 5 name
  • cat_level5_id:Category level 5 ID
API Reference

Method: GET

https://api.wuerth.it/api/v1/search-product
Example
curl 'http://wurthapi.me/api/v1/search-product?page=1&term=Levigatrice&eancode=&cat_level1=Utensili&cat_level1_id=&cat_level2=Utensili%20elettrici&cat_level2_id=&cat_level3=Levigatrici%20e%20lucidatrici%20elettriche&cat_level3_id=&cat_level4=Levigatrice%20roto-orbitale%20elettrica&cat_level4_id=&cat_level5=&cat_level5_id=' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"page": 1,
	"products": [
		{
			"productno": "07021290",
			"articles": [
				{
					"articleno": "07021290  989    1",
					"longdescription": "Levigatrice roto-orbitale ETS 150-E twin",
					"productno": "07021290",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORB. ETS 150-E TWIN",
					"eancode": "4050641245731",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43800.jpg",
                    ...
				},
				{
					"articleno": "07021290  961    1",
					"longdescription": "Levigatrice roto-orbitale ETS 150-E twin",
					"productno": "07021290",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORB. ETS 150-E TWIN",
					"eancode": "4047376942851",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43800.jpg",
                    ...
				}
			]
		},
		{
			"productno": "07021280",
			"articles": [
				{
					"articleno": "07021280  961    1",
					"longdescription": "Levigatrice roto-orbitale ETS 125-E",
					"productno": "07021280",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORBITALE ETS125-E",
					"eancode": "4047376942844",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43749.jpg",
                    ...
				}
			]
		}
	]
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/search-product
Example
import requests
import urllib

params = {
    'term': 'Levigatrice',
    'page': 1,
    'cat_level1': 'Utensili',
    'cat_level2': 'Utensili elettrici',
    'cat_level3': 'Levigatrici e lucidatrici elettriche',
    'cat_level4': 'Levigatrice roto-orbitale elettrica'
}

endpoint = "http://wurthapi.me/api/v1/search-product"
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint, params=params, headers=headers).json()
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"page": 1,
	"products": [
		{
			"productno": "07021290",
			"articles": [
				{
					"articleno": "07021290  989    1",
					"longdescription": "Levigatrice roto-orbitale ETS 150-E twin",
					"productno": "07021290",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORB. ETS 150-E TWIN",
					"eancode": "4050641245731",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43800.jpg",
                    ...
				},
				{
					"articleno": "07021290  961    1",
					"longdescription": "Levigatrice roto-orbitale ETS 150-E twin",
					"productno": "07021290",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORB. ETS 150-E TWIN",
					"eancode": "4047376942851",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43800.jpg",
                    ...
				}
			]
		},
		{
			"productno": "07021280",
			"articles": [
				{
					"articleno": "07021280  961    1",
					"longdescription": "Levigatrice roto-orbitale ETS 125-E",
					"productno": "07021280",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORBITALE ETS125-E",
					"eancode": "4047376942844",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43749.jpg",
                    ...
				}
			]
		}
	]
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/search-product
Example
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';

$params = [
    'term' => 'Levigatrice',
    'page' => 1,
    'cat_level1' => 'Utensili',
    'cat_level2' => 'Utensili elettrici',
    'cat_level3' => 'Levigatrici e lucidatrici elettriche',
    'cat_level4' => 'Levigatrice roto-orbitale elettrica'
];

$queryString = http_build_query($params);

$ch = curl_init('https://api.wuerth.it/api/v1/search-product?' . $queryString);

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"page": 1,
	"products": [
		{
			"productno": "07021290",
			"articles": [
				{
					"articleno": "07021290  989    1",
					"longdescription": "Levigatrice roto-orbitale ETS 150-E twin",
					"productno": "07021290",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORB. ETS 150-E TWIN",
					"eancode": "4050641245731",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43800.jpg",
                    ...
				},
				{
					"articleno": "07021290  961    1",
					"longdescription": "Levigatrice roto-orbitale ETS 150-E twin",
					"productno": "07021290",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORB. ETS 150-E TWIN",
					"eancode": "4047376942851",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43800.jpg",
                    ...
				}
			]
		},
		{
			"productno": "07021280",
			"articles": [
				{
					"articleno": "07021280  961    1",
					"longdescription": "Levigatrice roto-orbitale ETS 125-E",
					"productno": "07021280",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORBITALE ETS125-E",
					"eancode": "4047376942844",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43749.jpg",
                    ...
				}
			]
		}
	]
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-product/{product_no}
Example
String url = "https://api.wuerth.it/api/v1/search-product?page=1&term=Levigatrice&eancode=&cat_level1=Utensili&cat_level1_id=&cat_level2=Utensili%20elettrici&cat_level2_id=&cat_level3=Levigatrici%20e%20lucidatrici%20elettriche&cat_level3_id=&cat_level4=Levigatrice%20roto-orbitale%20elettrica&cat_level4_id=&cat_level5=&cat_level5_id=";

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
		new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
	response.append(inputLine);
}
in.close();

return response.toString();
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"page": 1,
	"products": [
		{
			"productno": "07021290",
			"articles": [
				{
					"articleno": "07021290  989    1",
					"longdescription": "Levigatrice roto-orbitale ETS 150-E twin",
					"productno": "07021290",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORB. ETS 150-E TWIN",
					"eancode": "4050641245731",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43800.jpg",
                    ...
				},
				{
					"articleno": "07021290  961    1",
					"longdescription": "Levigatrice roto-orbitale ETS 150-E twin",
					"productno": "07021290",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORB. ETS 150-E TWIN",
					"eancode": "4047376942851",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43800.jpg",
                    ...
				}
			]
		},
		{
			"productno": "07021280",
			"articles": [
				{
					"articleno": "07021280  961    1",
					"longdescription": "Levigatrice roto-orbitale ETS 125-E",
					"productno": "07021280",
					"alternative_article": null,
					"wuerth_classification_name": null,
					"description": "LEVIGATRICE ROTO-ORBITALE ETS125-E",
					"eancode": "4047376942844",
					"statusid": "5",
					"status": "Active",
					"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/43749.jpg",
                    ...
				}
			]
		}
	]
}

Get article

Use these APIs to retrieve information about an article passed as argument.

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every URL parameters must be url encoded!

API Reference

Method: GET

https://api.wuerth.it/api/v1/get-article/{article_no}
Example
curl 'https://api.wuerth.it/api/v1/get-article/07012290%20%20989%20%20%20%201' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"article": {
		"articleno": "07012290  989    1",
		"longdescription": "Trapano a percussione SB 13-XE",
		"productno": "07023220",
		"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
		"eancode": "4048539244812",
		"statusid": "5",
		"status": "Active",
		"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
		...
	}
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-article/{article_no}
Example
import requests
import urllib
articleno = "07012290  989    1"
urllib.quote_plus(articleno)
endpoint = "https://api.wuerth.it/api/v1/get-article/" + articleno
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint,headers=headers).json()
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"article": {
		"articleno": "07023220  989    1",
		"longdescription": "Trapano a percussione SB 13-XE",
		"productno": "07023220",
		"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
		"eancode": "4048539244812",
		"statusid": "5",
		"status": "Active",
		"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
		...
	}
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-article/{article_no}
Example
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';
$articleNo = rawurlencode('07012290  989    1');

$ch = curl_init('https://api.wuerth.it/api/v1/get-article/' . $articleNo);

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"article": {
		"articleno": "07023220  989    1",
		"longdescription": "Trapano a percussione SB 13-XE",
		"productno": "07023220",
		"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
		"eancode": "4048539244812",
		"statusid": "5",
		"status": "Active",
		"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
		...
	}
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-article/{article_no}
Example
String articleno = URLEncoder.encode("07012290  989    1", "UTF-8").replace("+", "%20");

String url = "https://api.wuerth.it/api/v1/get-article/" + articleno;

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
		new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
	response.append(inputLine);
}
in.close();

return response.toString();
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"article": {
		"articleno": "07023220  989    1",
		"longdescription": "Trapano a percussione SB 13-XE",
		"productno": "07023220",
		"description": "TRAPANO A PERCUSS.SB13-XE I.S.C.",
		"eancode": "4048539244812",
		"statusid": "5",
		"status": "Active",
		"imagethumbnailurl": "https://media.wuerth.com/stmedia/shop/348px/44129.jpg",
		...
	}
}

Get article price

Use these APIs to retrieve prices about an article passed as argument.

All prices are in Euros (EUR)

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every URL parameters must be url encoded!

API Reference

Method: GET

https://api.wuerth.it/api/v1/get-article-price/{article_no}
Example
curl 'https://api.wuerth.it/api/v1/get-article-price/07012290%20%20989%20%20%20%201' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"article": {
		"articleno": "07012290  989    1",
		"unit": "1",
		"discount": "0.00",
		"priceperpu": "395.00"
	}
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-article-price/{article_no}
Example
import requests
import urllib
articleno = "07012290  989    1"
urllib.quote_plus(articleno)
endpoint = "https://api.wuerth.it/api/v1/get-article-price/" + articleno
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint,headers=headers).json()
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"article": {
		"articleno": "07012290  989    1",
		"unit": "1",
		"discount": "0.00",
		"priceperpu": "395.00"
	}
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-article-price/{article_no}
Example
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';
$articleNo = rawurlencode('07012290  989    1');

$ch = curl_init('https://api.wuerth.it/api/v1/get-article-price/' . $articleNo);

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"article": {
		"articleno": "07012290  989    1",
		"unit": "1",
		"discount": "0.00",
		"priceperpu": "395.00"
	}
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/get-article-price/{article_no}
Example
String articleno = URLEncoder.encode("07012290  989    1", "UTF-8").replace("+", "%20");

String url = "https://api.wuerth.it/api/v1/get-article-price/" + articleno;

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
		new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
	response.append(inputLine);
}
in.close();

return response.toString();
Result
{
	"result": "ok",
	"error": "",
	"version": "1",
	"article": {
		"articleno": "07012290  989    1",
		"unit": "1",
		"discount": "0.00",
		"priceperpu": "395.00"
	}
}

Orders info data

Use these APIs to retrieve informations about orders.

You need to pass your Account relative Bearer Token on every call you make to this API

API Reference

Every Wurth API call uses the same endpoint prefix:

https://api.wuerth.it/api/v1

Get orders list by date ranges

Use these APIs to retrieve orders list by date ranges.

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every URL parameters must be url encoded!

  • startDate (required): The range start date. Format: YYYYMMDD
  • endDate (required): The range end date. Format: YYYYMMDD

API Reference

Method: GET

https://api.wuerth.it/api/v1/orders/list/by-date-ranges/{startDate}/{endDate}
Example
curl 'https://api.wuerth.it/api/v1/orders/list/by-date-ranges/20200601/20200701' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "orders": [
        {
            "num_order": "2094839880",
            "dat_orderentry": "2020-03-02 00:00:00",
            "orderTotalAmount": 5.32
        },
        {
            "num_order": "2094807685",
            "dat_orderentry": "2020-03-02 00:00:00",
            "orderTotalAmount": 1.17
        },
		...
    ]
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/orders/list/by-date-ranges/{startDate}/{endDate}
Example
import requests
import urllib
startDate = "20200601"
endDate = "20200701"
urllib.quote_plus(startDate)
urllib.quote_plus(endDate)
endpoint = "https://api.wuerth.it/api/v1/orders/list/by-date-ranges/" + orderNo + "/" + endDate
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint,headers=headers).json()
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "orders": [
        {
            "num_order": "2094839880",
            "dat_orderentry": "2020-03-02 00:00:00",
            "orderTotalAmount": 5.32
        },
        {
            "num_order": "2094807685",
            "dat_orderentry": "2020-03-02 00:00:00",
            "orderTotalAmount": 1.17
        },
		...
    ]
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/orders/list/by-date-ranges/{startDate}/{endDate}
Example
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';
$startDate = rawurlencode('20200601');
$endDate = rawurlencode('20200701');

$ch = curl_init('https://api.wuerth.it/api/v1/orders/list/by-date-ranges/' . $startDate . '/' . $endDate);

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "orders": [
        {
            "num_order": "2094839880",
            "dat_orderentry": "2020-03-02 00:00:00",
            "orderTotalAmount": 5.32
        },
        {
            "num_order": "2094807685",
            "dat_orderentry": "2020-03-02 00:00:00",
            "orderTotalAmount": 1.17
        },
		...
    ]
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/orders/list/by-date-ranges/{startDate}/{endDate}
Example
String startDate = URLEncoder.encode("20200601", "UTF-8").replace("+", "%20");

String endDate = URLEncoder.encode("20200701", "UTF-8").replace("+", "%20");

String url = "https://api.wuerth.it/api/v1/orders/list/by-date-ranges/" + startDate + "/" + endDate;

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
		new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
	response.append(inputLine);
}
in.close();

return response.toString();
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "orders": [
        {
            "num_order": "2094839880",
            "dat_orderentry": "2020-03-02 00:00:00",
            "orderTotalAmount": 5.32
        },
        {
            "num_order": "2094807685",
            "dat_orderentry": "2020-03-02 00:00:00",
            "orderTotalAmount": 1.17
        },
		...
    ]
}

Get orders infos

Use these APIs to retrieve orders infos and every relative articles inside the order.

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every URL parameters must be url encoded!

  • orderNo (required): The Wuerth order number

Note: you can use the returned "num_billingdocument" as parameter for the "Get invoice infos" API.

API Reference

Method: GET

https://api.wuerth.it/api/v1/order/{orderNo}
Example
curl 'https://api.wuerth.it/api/v1/order/2095049757' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "order": {
        "orderNo": "2095049757",
        "orderTotalAmount": "22.68",
        "orderPositions": [
            {
                "dat_orderentry": "2020-03-04 00:00:00",
                "num_order": "2095049757",
                "num_orderitem": "20",
                "ids_customer": "511170754",
                "dsc_product": "031024",
                "dsc_presentation": "092",
                "dsc_packagesize": "00050",
                "dsc_material": "031024    092   50",
                "amt_order": "3.12",
                "amt_netorder": "3.12",
                "amt_orderdiscount": "0",
                "amt_orderfreightcost": "0",
                "num_customerorder": "20721205",
                "qty_order": "19",
                "att_customermaterial": "0.001079.P",
                "num_billingdocument": "4277189651"
            },
            {
                "dat_orderentry": "2020-03-04 00:00:00",
                "num_order": "2095049757",
                "num_orderitem": "10",
                "ids_customer": "511170754",
                "dsc_product": "024702550",
                "dsc_presentation": "092",
                "dsc_packagesize": "00010",
                "dsc_material": "024702550 092   10",
                "amt_order": "13.44",
                "amt_netorder": "13.44",
                "amt_orderdiscount": "0",
                "amt_orderfreightcost": "0",
                "num_customerorder": "20721205",
                "qty_order": "4",
                "att_customermaterial": "0.055979.Q",
                "num_billingdocument": "4277189651"
            },
            ...
        ]
    }
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/order/{orderNo}
Example
import requests
import urllib
orderNo = "2095049757"
urllib.quote_plus(orderNo)
endpoint = "https://api.wuerth.it/api/v1/order/" + orderNo
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint,headers=headers).json()
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "order": {
        "orderNo": "2095049757",
        "orderTotalAmount": "22.68",
        "orderPositions": [
            {
                "dat_orderentry": "2020-03-04 00:00:00",
                "num_order": "2095049757",
                "num_orderitem": "20",
                "ids_customer": "511170754",
                "dsc_product": "031024",
                "dsc_presentation": "092",
                "dsc_packagesize": "00050",
                "dsc_material": "031024    092   50",
                "amt_order": "3.12",
                "amt_netorder": "3.12",
                "amt_orderdiscount": "0",
                "amt_orderfreightcost": "0",
                "num_customerorder": "20721205",
                "qty_order": "19",
                "att_customermaterial": "0.001079.P",
                "num_billingdocument": "4277189651"
            },
            {
                "dat_orderentry": "2020-03-04 00:00:00",
                "num_order": "2095049757",
                "num_orderitem": "10",
                "ids_customer": "511170754",
                "dsc_product": "024702550",
                "dsc_presentation": "092",
                "dsc_packagesize": "00010",
                "dsc_material": "024702550 092   10",
                "amt_order": "13.44",
                "amt_netorder": "13.44",
                "amt_orderdiscount": "0",
                "amt_orderfreightcost": "0",
                "num_customerorder": "20721205",
                "qty_order": "4",
                "att_customermaterial": "0.055979.Q",
                "num_billingdocument": "4277189651"
            },
            ...
        ]
    }
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/order/{orderNo}
Example
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';
$orderNo = rawurlencode('2095049757');

$ch = curl_init('https://api.wuerth.it/api/v1/order/' . $orderNo);

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "order": {
        "orderNo": "2095049757",
        "orderTotalAmount": "22.68",
        "orderPositions": [
            {
                "dat_orderentry": "2020-03-04 00:00:00",
                "num_order": "2095049757",
                "num_orderitem": "20",
                "ids_customer": "511170754",
                "dsc_product": "031024",
                "dsc_presentation": "092",
                "dsc_packagesize": "00050",
                "dsc_material": "031024    092   50",
                "amt_order": "3.12",
                "amt_netorder": "3.12",
                "amt_orderdiscount": "0",
                "amt_orderfreightcost": "0",
                "num_customerorder": "20721205",
                "qty_order": "19",
                "att_customermaterial": "0.001079.P",
                "num_billingdocument": "4277189651"
            },
            {
                "dat_orderentry": "2020-03-04 00:00:00",
                "num_order": "2095049757",
                "num_orderitem": "10",
                "ids_customer": "511170754",
                "dsc_product": "024702550",
                "dsc_presentation": "092",
                "dsc_packagesize": "00010",
                "dsc_material": "024702550 092   10",
                "amt_order": "13.44",
                "amt_netorder": "13.44",
                "amt_orderdiscount": "0",
                "amt_orderfreightcost": "0",
                "num_customerorder": "20721205",
                "qty_order": "4",
                "att_customermaterial": "0.055979.Q",
                "num_billingdocument": "4277189651"
            },
            ...
        ]
    }
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/order/{orderNo}
Example
String orderno = URLEncoder.encode("2095049757", "UTF-8").replace("+", "%20");

String url = "https://api.wuerth.it/api/v1/order/" + orderno;

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
		new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
	response.append(inputLine);
}
in.close();

return response.toString();
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "order": {
        "orderNo": "2095049757",
        "orderTotalAmount": "22.68",
        "orderPositions": [
            {
                "dat_orderentry": "2020-03-04 00:00:00",
                "num_order": "2095049757",
                "num_orderitem": "20",
                "ids_customer": "511170754",
                "dsc_product": "031024",
                "dsc_presentation": "092",
                "dsc_packagesize": "00050",
                "dsc_material": "031024    092   50",
                "amt_order": "3.12",
                "amt_netorder": "3.12",
                "amt_orderdiscount": "0",
                "amt_orderfreightcost": "0",
                "num_customerorder": "20721205",
                "qty_order": "19",
                "att_customermaterial": "0.001079.P",
                "num_billingdocument": "4277189651"
            },
            {
                "dat_orderentry": "2020-03-04 00:00:00",
                "num_order": "2095049757",
                "num_orderitem": "10",
                "ids_customer": "511170754",
                "dsc_product": "024702550",
                "dsc_presentation": "092",
                "dsc_packagesize": "00010",
                "dsc_material": "024702550 092   10",
                "amt_order": "13.44",
                "amt_netorder": "13.44",
                "amt_orderdiscount": "0",
                "amt_orderfreightcost": "0",
                "num_customerorder": "20721205",
                "qty_order": "4",
                "att_customermaterial": "0.055979.Q",
                "num_billingdocument": "4277189651"
            },
            ...
        ]
    }
}

Transport Delivery Documents API

Use these APIs to retrieve informations and data about transport delivery documents.

You need to pass your Account relative Bearer Token on every call you make to this API

API Reference

Every Wurth API call uses the same endpoint prefix:

https://api.wuerth.it/api/v1

Get delivery document infos

Use this APIs to retrieve transport delivery document infos with every article details.

You need to pass your Account relative Bearer Token on every call you make to this API

Remember: every URL parameters must be url encoded!

  • transportDeliveryNumber (required): The Transport Delivery Number

Note: you can use the "transportdeliverynumber" value as transportDeliveryNumber parameter returned from the "Get invoice infos" API.

API Reference

Method: GET

https://api.wuerth.it/api/v1/transport-delivery-document/{transportDeliveryNumber}
Example
curl 'https://api.wuerth.it/api/v1/transport-delivery-document/8331431602' -H 'authorization: Bearer TEST-agVd3VydGg=gaV'
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "transportDeliveryDocument": {
        "transportDeliveryDocumentNo": "8331431602",
        "transportDeliveryDocumentPositions": [
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "4",
                "dat_orderentry": "2020-03-02 00:00:00",
                "num_order": "2094804042",
                "num_orderitem": "20",
                "num_customerorder": "20721153",
                "ids_customer": "511170754",
                "dsc_product": "00895  10",
                "dsc_material": "00895  10 092 1000",
                "dsc_presentation": "092",
                "dsc_packagesize": "01000",
                "amt_netvalue": ".04",
                "amt_freightcost": "0",
                "qty_order": "4",
                "qty_invoice": "4",
                "amt_kilonetweight": ".01",
                "transportdeliverynumber": "8331431602"
            },
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "5",
                "dat_orderentry": "2020-03-02 00:00:00",
                "num_order": "2094804042",
                "num_orderitem": "30",
                "num_customerorder": "20721153",
                "ids_customer": "511170754",
                "dsc_product": "02576  25",
                "dsc_material": "02576  25 092  500",
                "dsc_presentation": "092",
                "dsc_packagesize": "00500",
                "amt_netvalue": ".34",
                "amt_freightcost": "0",
                "qty_order": "16",
                "qty_invoice": "16",
                "amt_kilonetweight": ".06",
                "transportdeliverynumber": "8331431602"
            },
            ...
        ]
    }
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/transport-delivery-document/{transportDeliveryNumber}
Example
import requests
import urllib
transportDeliveryNumber = "8331431602"
urllib.quote_plus(orderNo)
endpoint = "https://api.wuerth.it/api/v1/transport-delivery-document/" + transportDeliveryNumber
headers = {"Authorization":"Bearer TEST-agVd3VydGg=gaV"}

print requests.get(endpoint,headers=headers).json()
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "transportDeliveryDocument": {
        "transportDeliveryDocumentNo": "8331431602",
        "transportDeliveryDocumentPositions": [
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "4",
                "dat_orderentry": "2020-03-02 00:00:00",
                "num_order": "2094804042",
                "num_orderitem": "20",
                "num_customerorder": "20721153",
                "ids_customer": "511170754",
                "dsc_product": "00895  10",
                "dsc_material": "00895  10 092 1000",
                "dsc_presentation": "092",
                "dsc_packagesize": "01000",
                "amt_netvalue": ".04",
                "amt_freightcost": "0",
                "qty_order": "4",
                "qty_invoice": "4",
                "amt_kilonetweight": ".01",
                "transportdeliverynumber": "8331431602"
            },
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "5",
                "dat_orderentry": "2020-03-02 00:00:00",
                "num_order": "2094804042",
                "num_orderitem": "30",
                "num_customerorder": "20721153",
                "ids_customer": "511170754",
                "dsc_product": "02576  25",
                "dsc_material": "02576  25 092  500",
                "dsc_presentation": "092",
                "dsc_packagesize": "00500",
                "amt_netvalue": ".34",
                "amt_freightcost": "0",
                "qty_order": "16",
                "qty_invoice": "16",
                "amt_kilonetweight": ".06",
                "transportdeliverynumber": "8331431602"
            },
            ...
        ]
    }
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/transport-delivery-document/{transportDeliveryNumber}
Example
$authorization = 'Authorization: Bearer TEST-agVd3VydGg=gaV';
$transportDeliveryNumber = rawurlencode('8331431602');

$ch = curl_init('https://api.wuerth.it/api/v1/transport-delivery-document/' . $transportDeliveryNumber);

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization ));

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "transportDeliveryDocument": {
        "transportDeliveryDocumentNo": "8331431602",
        "transportDeliveryDocumentPositions": [
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "4",
                "dat_orderentry": "2020-03-02 00:00:00",
                "num_order": "2094804042",
                "num_orderitem": "20",
                "num_customerorder": "20721153",
                "ids_customer": "511170754",
                "dsc_product": "00895  10",
                "dsc_material": "00895  10 092 1000",
                "dsc_presentation": "092",
                "dsc_packagesize": "01000",
                "amt_netvalue": ".04",
                "amt_freightcost": "0",
                "qty_order": "4",
                "qty_invoice": "4",
                "amt_kilonetweight": ".01",
                "transportdeliverynumber": "8331431602"
            },
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "5",
                "dat_orderentry": "2020-03-02 00:00:00",
                "num_order": "2094804042",
                "num_orderitem": "30",
                "num_customerorder": "20721153",
                "ids_customer": "511170754",
                "dsc_product": "02576  25",
                "dsc_material": "02576  25 092  500",
                "dsc_presentation": "092",
                "dsc_packagesize": "00500",
                "amt_netvalue": ".34",
                "amt_freightcost": "0",
                "qty_order": "16",
                "qty_invoice": "16",
                "amt_kilonetweight": ".06",
                "transportdeliverynumber": "8331431602"
            },
            ...
        ]
    }
}
API Reference

Method: GET

https://api.wuerth.it/api/v1/transport-delivery-document/{transportDeliveryNumber}
Example
String transportDeliveryNumber = URLEncoder.encode("8331431602", "UTF-8").replace("+", "%20");

String url = "https://api.wuerth.it/api/v1/transport-delivery-document/" + transportDeliveryNumber;

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("GET");

con.setRequestProperty("Authorization", "Bearer TEST-agVd3VydGg=gaV");

int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);

BufferedReader in = new BufferedReader(
		new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
	response.append(inputLine);
}
in.close();

return response.toString();
Result
{
    "result": "ok",
    "error": "",
    "version": "1",
    "transportDeliveryDocument": {
        "transportDeliveryDocumentNo": "8331431602",
        "transportDeliveryDocumentPositions": [
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "4",
                "dat_orderentry": "2020-03-02 00:00:00",
                "num_order": "2094804042",
                "num_orderitem": "20",
                "num_customerorder": "20721153",
                "ids_customer": "511170754",
                "dsc_product": "00895  10",
                "dsc_material": "00895  10 092 1000",
                "dsc_presentation": "092",
                "dsc_packagesize": "01000",
                "amt_netvalue": ".04",
                "amt_freightcost": "0",
                "qty_order": "4",
                "qty_invoice": "4",
                "amt_kilonetweight": ".01",
                "transportdeliverynumber": "8331431602"
            },
            {
                "dat_billing": "2020-03-03 00:00:00",
                "num_billingdocument": "4277189651",
                "num_billingdocumentitem": "5",
                "dat_orderentry": "2020-03-02 00:00:00",
                "num_order": "2094804042",
                "num_orderitem": "30",
                "num_customerorder": "20721153",
                "ids_customer": "511170754",
                "dsc_product": "02576  25",
                "dsc_material": "02576  25 092  500",
                "dsc_presentation": "092",
                "dsc_packagesize": "00500",
                "amt_netvalue": ".34",
                "amt_freightcost": "0",
                "qty_order": "16",
                "qty_invoice": "16",
                "amt_kilonetweight": ".06",
                "transportdeliverynumber": "8331431602"
            },
            ...
        ]
    }
}