Introduction
This documentation aims to provide all the information you need to work with our API.
Authenticating requests
This API is not authenticated.
Endpoints
POST api/v1/hermes/parcels-groups
Example request:
curl --request POST \
"http://localhost/api/v1/hermes/parcels-groups" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"CreateParcelsGroup\": {
\"Apikey\": \"ut\",
\"ParcelsGroup\": {
\"MawbDate\": \"2024-06-19T04:40:04\",
\"ArrivalDate\": \"2024-06-19T04:40:04\"
}
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/parcels-groups"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"CreateParcelsGroup": {
"Apikey": "ut",
"ParcelsGroup": {
"MawbDate": "2024-06-19T04:40:04",
"ArrivalDate": "2024-06-19T04:40:04"
}
}
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/parcels-groups';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'CreateParcelsGroup' => [
'Apikey' => 'ut',
'ParcelsGroup' => [
'MawbDate' => '2024-06-19T04:40:04',
'ArrivalDate' => '2024-06-19T04:40:04',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
content-security-policy: base-uri 'self';connect-src 'self';default-src 'self';form-action 'self';img-src 'self' 'unsafe-eval' 'unsafe-inline' data:;media-src 'self';object-src 'none';script-src 'self' 'unsafe-eval' 'unsafe-inline' https://www.gstatic.com https://cdn.polyfill.io;style-src 'self' 'unsafe-eval' 'unsafe-inline' https://fonts.googleapis.com https://www.gstatic.com https://unpkg.com;font-src 'self' https://fonts.googleapis.com https://fonts.gstatic.com data:
access-control-allow-origin: *
set-cookie: XSRF-TOKEN=eyJpdiI6IlozYkV3dFRlbjJUWGF5ZitHeGE5Znc9PSIsInZhbHVlIjoiUnJHWVd2QWhiSW80TE8vcTVGcWlzR3Zya2xidTZ2NENNUUNCRThXRlpjRmg0c0kxNTVNWkNRYU8rdzR1WWI1aUxGSWI4NGhWNkoxV09OUXhOOHN0c3RFMVBBUHhGTzdRZ0M0K3lLY2tvMjQwM3BvQ3ZIaFBFNHdSdXhWN1NMZTQiLCJtYWMiOiI4OTkxMTc3MjVmYTViMTFiNmEzNDA0ZmZiYzE5ZDg4OGY3NDliNjhkZjdmM2M3ZTFhYjFmYmRhMTk0NGUxMzdjIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; samesite=lax; saaspatform_session=eyJpdiI6ImErQzd6OEdOditFQjJ0Mld6WlNyQWc9PSIsInZhbHVlIjoiRjNZbm82cFAyS1k1cUNYQVNJcFE0MnpUNG9jZXZ6OWEyelhTUlNwWHBRSGh4MU1pbkQ4bzBDTy9QZTB6b0I4eDI2S3hER0lBU3c0T2tSRHlmaVAxSkNqdTIwS2ZVa1h2RDByWU5DKzh5Q2tIdTV2ekVwd3YrZzZkbnNmQWJ4eGEiLCJtYWMiOiJjNjA5Y2Q0NWQ3NWJhY2JiNTUyY2ZjMzcyN2E4MDUwMzAyYjEwYjIzMTUwZTQ1NGZhZjc4MWQ4MDAyZGE4MjhmIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"code": "Unauthorized"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
DELETE api/v1/hermes/parcels-groups
Example request:
curl --request DELETE \
"http://localhost/api/v1/hermes/parcels-groups" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"CancelParcelsGroup\": {
\"Apikey\": \"exercitationem\"
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/parcels-groups"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"CancelParcelsGroup": {
"Apikey": "exercitationem"
}
};
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/parcels-groups';
$response = $client->delete(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'CancelParcelsGroup' => [
'Apikey' => 'exercitationem',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
content-security-policy: base-uri 'self';connect-src 'self';default-src 'self';form-action 'self';img-src 'self' 'unsafe-eval' 'unsafe-inline' data:;media-src 'self';object-src 'none';script-src 'self' 'unsafe-eval' 'unsafe-inline' https://www.gstatic.com https://cdn.polyfill.io;style-src 'self' 'unsafe-eval' 'unsafe-inline' https://fonts.googleapis.com https://www.gstatic.com https://unpkg.com;font-src 'self' https://fonts.googleapis.com https://fonts.gstatic.com data:
access-control-allow-origin: *
set-cookie: XSRF-TOKEN=eyJpdiI6IkE4Q1BCS2ROQnB4Vm5nbkk4citSdFE9PSIsInZhbHVlIjoiZCtHTkhhaWZ2MG8wL005OFhCSnRNWkRjaTk5cnBwdmRadnp5N3lzS09SZ0RpWlhyMVBnSzZnb1lQMks5YUZybEpBMHRXaVlENG5WMU9jVEVaVWZvWmZpbExKWHA2NWNIR0tLQ2hldE9rTDZhTnNnQkFjVTlrNGZlZHMvano5M00iLCJtYWMiOiI4ZDhkOGZiMDg4MGUxNTQ2ZWQ0NDBjYTUwZTUwMTRiYTdlMzFmYmNlYzQ5NjJkMTdlY2M5NGYyOTViZmYxNmM1IiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; samesite=lax; saaspatform_session=eyJpdiI6ImlWbUpBS05SWUZpb3pNMm1wTTNmS2c9PSIsInZhbHVlIjoiaXRkNjBmWUg1TU5OMytiR3BpbjVrVmVqSmFRNnFTRitSRTQ1ZTBhbENaNXliTVhjUnI5dm9ScjRxL1piM3lnT05JdnEzWk8xTk54TlJac1FNWUtFeDJZZDY1Q3BCc01meXRQR1ErYU80L09sSWhOSXNrVDdwMEc5UG9rY1ZrOVUiLCJtYWMiOiI5ZTQ2MGU1NjM4ZGUzNDUxNDU2MmEyYWFkYjg5Mzc4N2E2NjhhMzhiYzU2YjI3ZDBkZWE5NDIzOTE3ODAxODllIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"code": "Unauthorized"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
POST api/v1/hermes/parcels
Example request:
curl --request POST \
"http://localhost/api/v1/hermes/parcels" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"CreateParcel\": {
\"Apikey\": \"quisquam\",
\"IsTest\": true,
\"Parcel\": {
\"Source\": \"HERMES_CORP\",
\"ReasonForExport\": \"omnis\",
\"TrackingNumber\": \"itaque\",
\"Manifest\": false,
\"LabelType\": \"earum\",
\"LabelFormat\": \"et\",
\"FulfilmentOrigin\": \"sed\",
\"ShipperReferenceID\": \"nobis\",
\"CustomerReference1\": \"fugiat\",
\"CustomerReference2\": \"minima\",
\"Shipper\": {
\"AccountNumber\": \"quos\",
\"ContactName\": \"alias\",
\"Company\": \"hic\",
\"Address1\": \"non\",
\"Address2\": \"qui\",
\"Address3\": \"iste\",
\"City\": \"fuga\",
\"Country\": \"necessitatibus\",
\"Zip\": \"doloribus\",
\"CountryCode\": \"autem\",
\"Phone\": \"beatae\",
\"Email\": \"maud.barrows@example.com\",
\"Vat\": \"libero\",
\"TaxID\": \"placeat\",
\"Eori\": \"officiis\",
\"RegNumber\": \"animi\",
\"Url\": \"https:\\/\\/www.johnston.org\\/ex-repellat-tempore-vero-vitae-aut-dolorem\"
},
\"Consignee\": {
\"ContactName\": \"itaque\",
\"Company\": \"asperiores\",
\"Address1\": \"alias\",
\"Address2\": \"quia\",
\"Address3\": \"quis\",
\"City\": \"quod\",
\"Country\": \"earum\",
\"Zip\": \"qui\",
\"CountryCode\": \"voluptas\",
\"Phone\": \"quo\",
\"Email\": \"amy74@example.com\",
\"Vat\": \"nemo\",
\"PudoID\": \"nostrum\",
\"NationalID\": \"quia\",
\"PassportNumber\": \"eaque\",
\"PassportIssueDate\": \"corrupti\",
\"PassportExpiryDate\": \"repellat\",
\"PassportIssuedBy\": \"iusto\",
\"PassportIssueCountryCode\": \"GB\",
\"ContactNameLocal\": \"aliquam\",
\"TaxID\": \"illo\"
},
\"PaymentReferenceNumber\": \"id\",
\"PaymentDateTime\": \"tenetur\",
\"PaymentProvider\": \"voluptatum\",
\"Service\": \"HERMES_INTERNATIONAL\",
\"Collect\": \"molestiae\",
\"Pieces\": \"1\",
\"Weight\": \"3.02\",
\"WeightUnit\": \"K\",
\"Length\": \"4\",
\"Width\": \"4\",
\"Height\": \"4\",
\"DimUnit\": \"cm\",
\"DescriptionOfGoods\": \"quam\",
\"Value\": \"iste\",
\"ShippingCost\": \"voluptatem\",
\"Currency\": \"GBP\",
\"MerchantARN\": \"nulla\",
\"PurchaserABN\": \"incidunt\",
\"GSTExemptionCode\": \"officiis\",
\"Terms\": \"DDP\",
\"CODAmount\": \"132.99\",
\"CODCurrency\": \"sed\",
\"DangerousGoods\": false,
\"ShipperBrandingID\": \"debitis\",
\"Items\": [
{
\"Description\": \"Dolorem repellat omnis aliquam dolores.\",
\"SkuCode\": \"est\",
\"HsCode\": \"beatae\",
\"CountryOfOrigin\": \"esse\",
\"PurchaseUrl\": \"http:\\/\\/www.pacocha.com\\/error-porro-officia-perspiciatis-assumenda\",
\"ImageUrl\": \"http:\\/\\/www.hills.org\\/\",
\"Quantity\": \"ut\",
\"Value\": \"dolore\",
\"DetailedDescription\": \"cumque\",
\"ItemComposition\": \"100% Cotton\",
\"DG\": {
\"Type\": \"vero\",
\"ProductType\": \"quasi\",
\"Capacity\": \"beatae\",
\"CapacityUOM\": \"reiciendis\"
}
}
]
}
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/parcels"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"CreateParcel": {
"Apikey": "quisquam",
"IsTest": true,
"Parcel": {
"Source": "HERMES_CORP",
"ReasonForExport": "omnis",
"TrackingNumber": "itaque",
"Manifest": false,
"LabelType": "earum",
"LabelFormat": "et",
"FulfilmentOrigin": "sed",
"ShipperReferenceID": "nobis",
"CustomerReference1": "fugiat",
"CustomerReference2": "minima",
"Shipper": {
"AccountNumber": "quos",
"ContactName": "alias",
"Company": "hic",
"Address1": "non",
"Address2": "qui",
"Address3": "iste",
"City": "fuga",
"Country": "necessitatibus",
"Zip": "doloribus",
"CountryCode": "autem",
"Phone": "beatae",
"Email": "maud.barrows@example.com",
"Vat": "libero",
"TaxID": "placeat",
"Eori": "officiis",
"RegNumber": "animi",
"Url": "https:\/\/www.johnston.org\/ex-repellat-tempore-vero-vitae-aut-dolorem"
},
"Consignee": {
"ContactName": "itaque",
"Company": "asperiores",
"Address1": "alias",
"Address2": "quia",
"Address3": "quis",
"City": "quod",
"Country": "earum",
"Zip": "qui",
"CountryCode": "voluptas",
"Phone": "quo",
"Email": "amy74@example.com",
"Vat": "nemo",
"PudoID": "nostrum",
"NationalID": "quia",
"PassportNumber": "eaque",
"PassportIssueDate": "corrupti",
"PassportExpiryDate": "repellat",
"PassportIssuedBy": "iusto",
"PassportIssueCountryCode": "GB",
"ContactNameLocal": "aliquam",
"TaxID": "illo"
},
"PaymentReferenceNumber": "id",
"PaymentDateTime": "tenetur",
"PaymentProvider": "voluptatum",
"Service": "HERMES_INTERNATIONAL",
"Collect": "molestiae",
"Pieces": "1",
"Weight": "3.02",
"WeightUnit": "K",
"Length": "4",
"Width": "4",
"Height": "4",
"DimUnit": "cm",
"DescriptionOfGoods": "quam",
"Value": "iste",
"ShippingCost": "voluptatem",
"Currency": "GBP",
"MerchantARN": "nulla",
"PurchaserABN": "incidunt",
"GSTExemptionCode": "officiis",
"Terms": "DDP",
"CODAmount": "132.99",
"CODCurrency": "sed",
"DangerousGoods": false,
"ShipperBrandingID": "debitis",
"Items": [
{
"Description": "Dolorem repellat omnis aliquam dolores.",
"SkuCode": "est",
"HsCode": "beatae",
"CountryOfOrigin": "esse",
"PurchaseUrl": "http:\/\/www.pacocha.com\/error-porro-officia-perspiciatis-assumenda",
"ImageUrl": "http:\/\/www.hills.org\/",
"Quantity": "ut",
"Value": "dolore",
"DetailedDescription": "cumque",
"ItemComposition": "100% Cotton",
"DG": {
"Type": "vero",
"ProductType": "quasi",
"Capacity": "beatae",
"CapacityUOM": "reiciendis"
}
}
]
}
}
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/parcels';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'CreateParcel' => [
'Apikey' => 'quisquam',
'IsTest' => true,
'Parcel' => [
'Source' => 'HERMES_CORP',
'ReasonForExport' => 'omnis',
'TrackingNumber' => 'itaque',
'Manifest' => false,
'LabelType' => 'earum',
'LabelFormat' => 'et',
'FulfilmentOrigin' => 'sed',
'ShipperReferenceID' => 'nobis',
'CustomerReference1' => 'fugiat',
'CustomerReference2' => 'minima',
'Shipper' => [
'AccountNumber' => 'quos',
'ContactName' => 'alias',
'Company' => 'hic',
'Address1' => 'non',
'Address2' => 'qui',
'Address3' => 'iste',
'City' => 'fuga',
'Country' => 'necessitatibus',
'Zip' => 'doloribus',
'CountryCode' => 'autem',
'Phone' => 'beatae',
'Email' => 'maud.barrows@example.com',
'Vat' => 'libero',
'TaxID' => 'placeat',
'Eori' => 'officiis',
'RegNumber' => 'animi',
'Url' => 'https://www.johnston.org/ex-repellat-tempore-vero-vitae-aut-dolorem',
],
'Consignee' => [
'ContactName' => 'itaque',
'Company' => 'asperiores',
'Address1' => 'alias',
'Address2' => 'quia',
'Address3' => 'quis',
'City' => 'quod',
'Country' => 'earum',
'Zip' => 'qui',
'CountryCode' => 'voluptas',
'Phone' => 'quo',
'Email' => 'amy74@example.com',
'Vat' => 'nemo',
'PudoID' => 'nostrum',
'NationalID' => 'quia',
'PassportNumber' => 'eaque',
'PassportIssueDate' => 'corrupti',
'PassportExpiryDate' => 'repellat',
'PassportIssuedBy' => 'iusto',
'PassportIssueCountryCode' => 'GB',
'ContactNameLocal' => 'aliquam',
'TaxID' => 'illo',
],
'PaymentReferenceNumber' => 'id',
'PaymentDateTime' => 'tenetur',
'PaymentProvider' => 'voluptatum',
'Service' => 'HERMES_INTERNATIONAL',
'Collect' => 'molestiae',
'Pieces' => '1',
'Weight' => '3.02',
'WeightUnit' => 'K',
'Length' => '4',
'Width' => '4',
'Height' => '4',
'DimUnit' => 'cm',
'DescriptionOfGoods' => 'quam',
'Value' => 'iste',
'ShippingCost' => 'voluptatem',
'Currency' => 'GBP',
'MerchantARN' => 'nulla',
'PurchaserABN' => 'incidunt',
'GSTExemptionCode' => 'officiis',
'Terms' => 'DDP',
'CODAmount' => '132.99',
'CODCurrency' => 'sed',
'DangerousGoods' => false,
'ShipperBrandingID' => 'debitis',
'Items' => [
[
'Description' => 'Dolorem repellat omnis aliquam dolores.',
'SkuCode' => 'est',
'HsCode' => 'beatae',
'CountryOfOrigin' => 'esse',
'PurchaseUrl' => 'http://www.pacocha.com/error-porro-officia-perspiciatis-assumenda',
'ImageUrl' => 'http://www.hills.org/',
'Quantity' => 'ut',
'Value' => 'dolore',
'DetailedDescription' => 'cumque',
'ItemComposition' => '100% Cotton',
'DG' => [
'Type' => 'vero',
'ProductType' => 'quasi',
'Capacity' => 'beatae',
'CapacityUOM' => 'reiciendis',
],
],
],
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
content-security-policy: base-uri 'self';connect-src 'self';default-src 'self';form-action 'self';img-src 'self' 'unsafe-eval' 'unsafe-inline' data:;media-src 'self';object-src 'none';script-src 'self' 'unsafe-eval' 'unsafe-inline' https://www.gstatic.com https://cdn.polyfill.io;style-src 'self' 'unsafe-eval' 'unsafe-inline' https://fonts.googleapis.com https://www.gstatic.com https://unpkg.com;font-src 'self' https://fonts.googleapis.com https://fonts.gstatic.com data:
access-control-allow-origin: *
set-cookie: XSRF-TOKEN=eyJpdiI6IklpUzRxRFlyOWpmclMxTzdhbTdSUkE9PSIsInZhbHVlIjoiQitwQWRFNHRBczJhU00zcklUblpzbHY3ZW5QcFRRYnVzOXV4Y0JhQjI3cHQ3ZTFqMEROQ25mNll4UzJpTWNrQ1JIWE1JbWNWQ090R0RSOVhRSkdua1JKdGlTYkFycHN2c3FHWGNtUDhOS1l3akJWdzc3QUF4WUtuMmk1RTJ1b3MiLCJtYWMiOiJiODkyZGUxZTU1YjM0ZjEyMDhjMzQ0YmRkYzM1NDI1OTUwZTI1YmJjOTk5MTM4NDQyYTBjZWUyMDU0YjgzMDg5IiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:03 GMT; Max-Age=7200; path=/; samesite=lax; saaspatform_session=eyJpdiI6IlF0SEhnNEFPRUZ3UXZIck9oUHJpRXc9PSIsInZhbHVlIjoiNVdaOFlGaWhyOSszdGV5ckRGNk1vRGp3MWpzWXdic1NqeWk1MVhIMGUxZWw4dUlXQ1ovOWt1R1ZpdGVCeTJUb0FJUHhrVndwc2oyV3ZiNEtJWUxCdjVJTmh2cmREaWh6SGNoU1FWaHJaejNIY1doQTBlYUJsSWFpaUp1d1FmNVMiLCJtYWMiOiJlOWM0NzNkNDdhODJkYWY3MWZlZWRkZTVhZGM4NmY0ODAwZjRhMzMyMDJjODY2ZTdhZDVlM2Q4MDU5NzNlZTRjIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:03 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"code": "Unauthorized"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
POST api/v1/hermes/parcels/register
Example request:
curl --request POST \
"http://localhost/api/v1/hermes/parcels/register" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"CreateParcel\": {
\"Apikey\": \"nostrum\",
\"IsTest\": true,
\"Parcel\": {
\"Source\": \"HERMES_CORP\",
\"ReasonForExport\": \"debitis\",
\"TrackingNumber\": \"quis\",
\"Manifest\": true,
\"LabelType\": \"optio\",
\"LabelFormat\": \"qui\",
\"FulfilmentOrigin\": \"nobis\",
\"ShipperReferenceID\": \"et\",
\"CustomerReference1\": \"sit\",
\"CustomerReference2\": \"animi\",
\"Shipper\": {
\"AccountNumber\": \"doloremque\",
\"ContactName\": \"ut\",
\"Company\": \"temporibus\",
\"Address1\": \"quaerat\",
\"Address2\": \"repellat\",
\"Address3\": \"animi\",
\"City\": \"voluptas\",
\"Country\": \"asperiores\",
\"Zip\": \"qui\",
\"CountryCode\": \"ducimus\",
\"Phone\": \"mollitia\",
\"Email\": \"osbaldo94@example.net\",
\"Vat\": \"velit\",
\"TaxID\": \"sapiente\",
\"Eori\": \"voluptates\",
\"RegNumber\": \"molestias\",
\"Url\": \"https:\\/\\/www.hilpert.com\\/ipsum-eos-possimus-illo-omnis-ullam-velit-voluptate\"
},
\"Consignee\": {
\"ContactName\": \"repellat\",
\"Company\": \"maiores\",
\"Address1\": \"adipisci\",
\"Address2\": \"quis\",
\"Address3\": \"et\",
\"City\": \"dolorum\",
\"Country\": \"sed\",
\"Zip\": \"repellendus\",
\"CountryCode\": \"et\",
\"Phone\": \"veritatis\",
\"Email\": \"kcarter@example.com\",
\"Vat\": \"et\",
\"PudoID\": \"eligendi\",
\"NationalID\": \"quisquam\",
\"PassportNumber\": \"blanditiis\",
\"PassportIssueDate\": \"dicta\",
\"PassportExpiryDate\": \"nostrum\",
\"PassportIssuedBy\": \"laboriosam\",
\"PassportIssueCountryCode\": \"GB\",
\"ContactNameLocal\": \"ab\",
\"TaxID\": \"qui\"
},
\"PaymentReferenceNumber\": \"voluptatem\",
\"PaymentDateTime\": \"culpa\",
\"PaymentProvider\": \"id\",
\"Service\": \"HERMES_INTERNATIONAL\",
\"Collect\": \"accusantium\",
\"Pieces\": \"1\",
\"Weight\": \"3.02\",
\"WeightUnit\": \"K\",
\"Length\": \"4\",
\"Width\": \"4\",
\"Height\": \"4\",
\"DimUnit\": \"cm\",
\"DescriptionOfGoods\": \"amet\",
\"Value\": \"accusantium\",
\"ShippingCost\": \"eos\",
\"Currency\": \"GBP\",
\"MerchantARN\": \"aut\",
\"PurchaserABN\": \"placeat\",
\"GSTExemptionCode\": \"quo\",
\"Terms\": \"DDP\",
\"CODAmount\": \"132.99\",
\"CODCurrency\": \"placeat\",
\"DangerousGoods\": false,
\"ShipperBrandingID\": \"quo\",
\"Items\": [
{
\"Description\": \"Laudantium et quidem ab aperiam totam tempora quia.\",
\"SkuCode\": \"dignissimos\",
\"HsCode\": \"harum\",
\"CountryOfOrigin\": \"consequuntur\",
\"PurchaseUrl\": \"https:\\/\\/www.conroy.com\\/laborum-veritatis-sapiente-et-ullam\",
\"ImageUrl\": \"https:\\/\\/oreilly.com\\/odio-qui-suscipit-est-earum.html\",
\"Quantity\": \"cum\",
\"Value\": \"sequi\",
\"DetailedDescription\": \"voluptatum\",
\"ItemComposition\": \"100% Cotton\",
\"DG\": {
\"Type\": \"quasi\",
\"ProductType\": \"et\",
\"Capacity\": \"pariatur\",
\"CapacityUOM\": \"voluptatem\"
}
}
]
}
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/parcels/register"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"CreateParcel": {
"Apikey": "nostrum",
"IsTest": true,
"Parcel": {
"Source": "HERMES_CORP",
"ReasonForExport": "debitis",
"TrackingNumber": "quis",
"Manifest": true,
"LabelType": "optio",
"LabelFormat": "qui",
"FulfilmentOrigin": "nobis",
"ShipperReferenceID": "et",
"CustomerReference1": "sit",
"CustomerReference2": "animi",
"Shipper": {
"AccountNumber": "doloremque",
"ContactName": "ut",
"Company": "temporibus",
"Address1": "quaerat",
"Address2": "repellat",
"Address3": "animi",
"City": "voluptas",
"Country": "asperiores",
"Zip": "qui",
"CountryCode": "ducimus",
"Phone": "mollitia",
"Email": "osbaldo94@example.net",
"Vat": "velit",
"TaxID": "sapiente",
"Eori": "voluptates",
"RegNumber": "molestias",
"Url": "https:\/\/www.hilpert.com\/ipsum-eos-possimus-illo-omnis-ullam-velit-voluptate"
},
"Consignee": {
"ContactName": "repellat",
"Company": "maiores",
"Address1": "adipisci",
"Address2": "quis",
"Address3": "et",
"City": "dolorum",
"Country": "sed",
"Zip": "repellendus",
"CountryCode": "et",
"Phone": "veritatis",
"Email": "kcarter@example.com",
"Vat": "et",
"PudoID": "eligendi",
"NationalID": "quisquam",
"PassportNumber": "blanditiis",
"PassportIssueDate": "dicta",
"PassportExpiryDate": "nostrum",
"PassportIssuedBy": "laboriosam",
"PassportIssueCountryCode": "GB",
"ContactNameLocal": "ab",
"TaxID": "qui"
},
"PaymentReferenceNumber": "voluptatem",
"PaymentDateTime": "culpa",
"PaymentProvider": "id",
"Service": "HERMES_INTERNATIONAL",
"Collect": "accusantium",
"Pieces": "1",
"Weight": "3.02",
"WeightUnit": "K",
"Length": "4",
"Width": "4",
"Height": "4",
"DimUnit": "cm",
"DescriptionOfGoods": "amet",
"Value": "accusantium",
"ShippingCost": "eos",
"Currency": "GBP",
"MerchantARN": "aut",
"PurchaserABN": "placeat",
"GSTExemptionCode": "quo",
"Terms": "DDP",
"CODAmount": "132.99",
"CODCurrency": "placeat",
"DangerousGoods": false,
"ShipperBrandingID": "quo",
"Items": [
{
"Description": "Laudantium et quidem ab aperiam totam tempora quia.",
"SkuCode": "dignissimos",
"HsCode": "harum",
"CountryOfOrigin": "consequuntur",
"PurchaseUrl": "https:\/\/www.conroy.com\/laborum-veritatis-sapiente-et-ullam",
"ImageUrl": "https:\/\/oreilly.com\/odio-qui-suscipit-est-earum.html",
"Quantity": "cum",
"Value": "sequi",
"DetailedDescription": "voluptatum",
"ItemComposition": "100% Cotton",
"DG": {
"Type": "quasi",
"ProductType": "et",
"Capacity": "pariatur",
"CapacityUOM": "voluptatem"
}
}
]
}
}
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/parcels/register';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'CreateParcel' => [
'Apikey' => 'nostrum',
'IsTest' => true,
'Parcel' => [
'Source' => 'HERMES_CORP',
'ReasonForExport' => 'debitis',
'TrackingNumber' => 'quis',
'Manifest' => true,
'LabelType' => 'optio',
'LabelFormat' => 'qui',
'FulfilmentOrigin' => 'nobis',
'ShipperReferenceID' => 'et',
'CustomerReference1' => 'sit',
'CustomerReference2' => 'animi',
'Shipper' => [
'AccountNumber' => 'doloremque',
'ContactName' => 'ut',
'Company' => 'temporibus',
'Address1' => 'quaerat',
'Address2' => 'repellat',
'Address3' => 'animi',
'City' => 'voluptas',
'Country' => 'asperiores',
'Zip' => 'qui',
'CountryCode' => 'ducimus',
'Phone' => 'mollitia',
'Email' => 'osbaldo94@example.net',
'Vat' => 'velit',
'TaxID' => 'sapiente',
'Eori' => 'voluptates',
'RegNumber' => 'molestias',
'Url' => 'https://www.hilpert.com/ipsum-eos-possimus-illo-omnis-ullam-velit-voluptate',
],
'Consignee' => [
'ContactName' => 'repellat',
'Company' => 'maiores',
'Address1' => 'adipisci',
'Address2' => 'quis',
'Address3' => 'et',
'City' => 'dolorum',
'Country' => 'sed',
'Zip' => 'repellendus',
'CountryCode' => 'et',
'Phone' => 'veritatis',
'Email' => 'kcarter@example.com',
'Vat' => 'et',
'PudoID' => 'eligendi',
'NationalID' => 'quisquam',
'PassportNumber' => 'blanditiis',
'PassportIssueDate' => 'dicta',
'PassportExpiryDate' => 'nostrum',
'PassportIssuedBy' => 'laboriosam',
'PassportIssueCountryCode' => 'GB',
'ContactNameLocal' => 'ab',
'TaxID' => 'qui',
],
'PaymentReferenceNumber' => 'voluptatem',
'PaymentDateTime' => 'culpa',
'PaymentProvider' => 'id',
'Service' => 'HERMES_INTERNATIONAL',
'Collect' => 'accusantium',
'Pieces' => '1',
'Weight' => '3.02',
'WeightUnit' => 'K',
'Length' => '4',
'Width' => '4',
'Height' => '4',
'DimUnit' => 'cm',
'DescriptionOfGoods' => 'amet',
'Value' => 'accusantium',
'ShippingCost' => 'eos',
'Currency' => 'GBP',
'MerchantARN' => 'aut',
'PurchaserABN' => 'placeat',
'GSTExemptionCode' => 'quo',
'Terms' => 'DDP',
'CODAmount' => '132.99',
'CODCurrency' => 'placeat',
'DangerousGoods' => false,
'ShipperBrandingID' => 'quo',
'Items' => [
[
'Description' => 'Laudantium et quidem ab aperiam totam tempora quia.',
'SkuCode' => 'dignissimos',
'HsCode' => 'harum',
'CountryOfOrigin' => 'consequuntur',
'PurchaseUrl' => 'https://www.conroy.com/laborum-veritatis-sapiente-et-ullam',
'ImageUrl' => 'https://oreilly.com/odio-qui-suscipit-est-earum.html',
'Quantity' => 'cum',
'Value' => 'sequi',
'DetailedDescription' => 'voluptatum',
'ItemComposition' => '100% Cotton',
'DG' => [
'Type' => 'quasi',
'ProductType' => 'et',
'Capacity' => 'pariatur',
'CapacityUOM' => 'voluptatem',
],
],
],
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
content-security-policy: base-uri 'self';connect-src 'self';default-src 'self';form-action 'self';img-src 'self' 'unsafe-eval' 'unsafe-inline' data:;media-src 'self';object-src 'none';script-src 'self' 'unsafe-eval' 'unsafe-inline' https://www.gstatic.com https://cdn.polyfill.io;style-src 'self' 'unsafe-eval' 'unsafe-inline' https://fonts.googleapis.com https://www.gstatic.com https://unpkg.com;font-src 'self' https://fonts.googleapis.com https://fonts.gstatic.com data:
access-control-allow-origin: *
set-cookie: XSRF-TOKEN=eyJpdiI6IlRrenplTjJVT3d0NG44akJ6ZGJ2OVE9PSIsInZhbHVlIjoiZHdDY2dUQi9xZjh5TjlKNFcxUi8zTlE0d2srbldNVkJSTjhKZytITDNPZGRic3dIZVh4aHoyOVc1cDc2K1RLbXRGUW1VN3duRG91MDZDMllVSS9pWk1aYU5Bazlsb0JUS1dUU1R3MWZmVHNEQlVhd1gxYkNPR1hyeTFyQURVL28iLCJtYWMiOiJlMTdkNWQyODg1ZjkxYTFmNWIzYWNkMWY4YmZmOGE1MjMyMjFmYmEzY2ZiMzMwNGMyNzFhMjVmNDI1MTA1ZmUyIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; samesite=lax; saaspatform_session=eyJpdiI6ImxzY3lWeWY0eldxVGhsSFJhaHN3Qmc9PSIsInZhbHVlIjoiY3ZWTUphRWhqQld6MXJzYmR3ZXV5aGlTdktXditwZzkrTmVNMGI1UTdhZ3RjYlVhR0RvQzBSU3A2aUs3SDZoNVhxWi9jNUx6TWJZVVIwUUcybVFlWmtrakNxcGN4QzhXbVE4V2RTWVhhV3phOEMxOGZaNW9oZExMUXhsUVN4SlMiLCJtYWMiOiI3YjUyM2VkODc0YjNkZTZkZGE1YWJlZmQxNzBiODRmOWYwZGMxYWU3MGZjM2I1NTJiNTlmYTgyNDBhZTgwNTc0IiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"code": "Unauthorized"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
POST api/v1/hermes/parcels/accept
Example request:
curl --request POST \
"http://localhost/api/v1/hermes/parcels/accept" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"AcceptParcel\": {
\"Apikey\": \"ea\",
\"IsTest\": true,
\"Parcel\": {
\"TrackingNumber\": \"alias\",
\"ProcessedDateTime\": \"2024-06-19T04:40:04\",
\"Weight\": 420426660.03,
\"Height\": 0.7576,
\"Width\": 13903229.08165,
\"Length\": 12408.69
}
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/parcels/accept"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"AcceptParcel": {
"Apikey": "ea",
"IsTest": true,
"Parcel": {
"TrackingNumber": "alias",
"ProcessedDateTime": "2024-06-19T04:40:04",
"Weight": 420426660.03,
"Height": 0.7576,
"Width": 13903229.08165,
"Length": 12408.69
}
}
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/parcels/accept';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'AcceptParcel' => [
'Apikey' => 'ea',
'IsTest' => true,
'Parcel' => [
'TrackingNumber' => 'alias',
'ProcessedDateTime' => '2024-06-19T04:40:04',
'Weight' => 420426660.03,
'Height' => 0.7576,
'Width' => 13903229.08165,
'Length' => 12408.69,
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
content-security-policy: base-uri 'self';connect-src 'self';default-src 'self';form-action 'self';img-src 'self' 'unsafe-eval' 'unsafe-inline' data:;media-src 'self';object-src 'none';script-src 'self' 'unsafe-eval' 'unsafe-inline' https://www.gstatic.com https://cdn.polyfill.io;style-src 'self' 'unsafe-eval' 'unsafe-inline' https://fonts.googleapis.com https://www.gstatic.com https://unpkg.com;font-src 'self' https://fonts.googleapis.com https://fonts.gstatic.com data:
access-control-allow-origin: *
set-cookie: XSRF-TOKEN=eyJpdiI6InU3ZWN0eW5FOVZkZEdwTlIrWEdwVFE9PSIsInZhbHVlIjoiV0ljb0dncGJPWGRQYjZGbTU4RzFwU1U5RG0xTmsyTThKYWh4MWNNRWVyRE1DSEwrcVk3bTZHenhKVUV3cjVCQWk2dTFLZWtDM2xSby8vb2ViQ1IzQjIvZUczeEorcjVnMDZYUEdDc3BXS2FKdThETGJTcEVCTUl3VE1jcnFCemsiLCJtYWMiOiIwMGNmMjRlMDUxMmQxODlhNzZlZmQ0MTQ0ZjZlNDEwYzcyMGNlNGY0OGI0MzM0MjFiOWU1NjAyMzY5ODQxMzIyIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; samesite=lax; saaspatform_session=eyJpdiI6ImVRNWpPQi9VSTVlblZLa2xQYkFmWWc9PSIsInZhbHVlIjoiV21pMFdOV1dCTWhaNFREbGR3Z25CbUNoNHhGOGIxeXlmMThRYnpKWGY3cmk5MFo2aHdKSDlhUEVEWERSZmpjdDFGZmsrSy80N3JXb0EwaHB2c2Fjenk5NlpFZklUaW1wTHBaTnlWN3R1em1mdCtVdUNBaStpbS85WG15YWtPcUgiLCJtYWMiOiIxZDAzZTM2NTExZWVhZTU5YzVmOWU0NWZkZGVmNzdmMjdmZGFmMWM3YzA4ZmUzNTdjMDVlMjkyYjlhNjA0Yjk0IiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"code": "Unauthorized"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
POST api/v1/hermes/determinerouting
Example request:
curl --request POST \
"http://localhost/api/v1/hermes/determinerouting" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"CreateParcel\": {
\"Apikey\": \"in\",
\"IsTest\": true,
\"Parcel\": {
\"Source\": \"HERMES_CORP\",
\"ReasonForExport\": \"tempora\",
\"TrackingNumber\": \"ut\",
\"Manifest\": false,
\"LabelType\": \"aut\",
\"LabelFormat\": \"debitis\",
\"FulfilmentOrigin\": \"corporis\",
\"ShipperReferenceID\": \"mollitia\",
\"CustomerReference1\": \"atque\",
\"CustomerReference2\": \"rerum\",
\"Shipper\": {
\"AccountNumber\": \"voluptas\",
\"ContactName\": \"quia\",
\"Company\": \"eos\",
\"Address1\": \"qui\",
\"Address2\": \"eaque\",
\"Address3\": \"sit\",
\"City\": \"non\",
\"Country\": \"quia\",
\"Zip\": \"nostrum\",
\"CountryCode\": \"est\",
\"Phone\": \"ut\",
\"Email\": \"weissnat.trent@example.com\",
\"Vat\": \"ipsum\",
\"TaxID\": \"enim\",
\"Eori\": \"optio\",
\"RegNumber\": \"est\",
\"Url\": \"http:\\/\\/hodkiewicz.com\\/eligendi-officiis-in-saepe-aliquid-voluptas-et\"
},
\"Consignee\": {
\"ContactName\": \"est\",
\"Company\": \"tempore\",
\"Address1\": \"magnam\",
\"Address2\": \"tenetur\",
\"Address3\": \"quod\",
\"City\": \"vitae\",
\"Country\": \"excepturi\",
\"Zip\": \"totam\",
\"CountryCode\": \"itaque\",
\"Phone\": \"at\",
\"Email\": \"carson25@example.com\",
\"Vat\": \"quia\",
\"PudoID\": \"quam\",
\"NationalID\": \"et\",
\"PassportNumber\": \"iusto\",
\"PassportIssueDate\": \"qui\",
\"PassportExpiryDate\": \"non\",
\"PassportIssuedBy\": \"est\",
\"PassportIssueCountryCode\": \"GB\",
\"ContactNameLocal\": \"molestiae\",
\"TaxID\": \"culpa\"
},
\"PaymentReferenceNumber\": \"quia\",
\"PaymentDateTime\": \"non\",
\"PaymentProvider\": \"occaecati\",
\"Service\": \"HERMES_INTERNATIONAL\",
\"Collect\": \"sit\",
\"Pieces\": \"1\",
\"Weight\": \"3.02\",
\"WeightUnit\": \"K\",
\"Length\": \"4\",
\"Width\": \"4\",
\"Height\": \"4\",
\"DimUnit\": \"cm\",
\"DescriptionOfGoods\": \"voluptates\",
\"Value\": \"ad\",
\"ShippingCost\": \"dolores\",
\"Currency\": \"GBP\",
\"MerchantARN\": \"qui\",
\"PurchaserABN\": \"qui\",
\"GSTExemptionCode\": \"quam\",
\"Terms\": \"DDP\",
\"CODAmount\": \"132.99\",
\"CODCurrency\": \"provident\",
\"DangerousGoods\": true,
\"ShipperBrandingID\": \"dolorum\",
\"Items\": [
{
\"Description\": \"Facere eius non error quidem.\",
\"SkuCode\": \"dignissimos\",
\"HsCode\": \"qui\",
\"CountryOfOrigin\": \"ut\",
\"PurchaseUrl\": \"http:\\/\\/www.mcglynn.net\\/animi-eum-ut-harum-architecto-aspernatur.html\",
\"ImageUrl\": \"http:\\/\\/blanda.info\\/sunt-repellat-quas-aperiam-vel-et-et.html\",
\"Quantity\": \"voluptatem\",
\"Value\": \"quia\",
\"DetailedDescription\": \"et\",
\"ItemComposition\": \"100% Cotton\",
\"DG\": {
\"Type\": \"nisi\",
\"ProductType\": \"adipisci\",
\"Capacity\": \"porro\",
\"CapacityUOM\": \"quod\"
}
}
]
}
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/determinerouting"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"CreateParcel": {
"Apikey": "in",
"IsTest": true,
"Parcel": {
"Source": "HERMES_CORP",
"ReasonForExport": "tempora",
"TrackingNumber": "ut",
"Manifest": false,
"LabelType": "aut",
"LabelFormat": "debitis",
"FulfilmentOrigin": "corporis",
"ShipperReferenceID": "mollitia",
"CustomerReference1": "atque",
"CustomerReference2": "rerum",
"Shipper": {
"AccountNumber": "voluptas",
"ContactName": "quia",
"Company": "eos",
"Address1": "qui",
"Address2": "eaque",
"Address3": "sit",
"City": "non",
"Country": "quia",
"Zip": "nostrum",
"CountryCode": "est",
"Phone": "ut",
"Email": "weissnat.trent@example.com",
"Vat": "ipsum",
"TaxID": "enim",
"Eori": "optio",
"RegNumber": "est",
"Url": "http:\/\/hodkiewicz.com\/eligendi-officiis-in-saepe-aliquid-voluptas-et"
},
"Consignee": {
"ContactName": "est",
"Company": "tempore",
"Address1": "magnam",
"Address2": "tenetur",
"Address3": "quod",
"City": "vitae",
"Country": "excepturi",
"Zip": "totam",
"CountryCode": "itaque",
"Phone": "at",
"Email": "carson25@example.com",
"Vat": "quia",
"PudoID": "quam",
"NationalID": "et",
"PassportNumber": "iusto",
"PassportIssueDate": "qui",
"PassportExpiryDate": "non",
"PassportIssuedBy": "est",
"PassportIssueCountryCode": "GB",
"ContactNameLocal": "molestiae",
"TaxID": "culpa"
},
"PaymentReferenceNumber": "quia",
"PaymentDateTime": "non",
"PaymentProvider": "occaecati",
"Service": "HERMES_INTERNATIONAL",
"Collect": "sit",
"Pieces": "1",
"Weight": "3.02",
"WeightUnit": "K",
"Length": "4",
"Width": "4",
"Height": "4",
"DimUnit": "cm",
"DescriptionOfGoods": "voluptates",
"Value": "ad",
"ShippingCost": "dolores",
"Currency": "GBP",
"MerchantARN": "qui",
"PurchaserABN": "qui",
"GSTExemptionCode": "quam",
"Terms": "DDP",
"CODAmount": "132.99",
"CODCurrency": "provident",
"DangerousGoods": true,
"ShipperBrandingID": "dolorum",
"Items": [
{
"Description": "Facere eius non error quidem.",
"SkuCode": "dignissimos",
"HsCode": "qui",
"CountryOfOrigin": "ut",
"PurchaseUrl": "http:\/\/www.mcglynn.net\/animi-eum-ut-harum-architecto-aspernatur.html",
"ImageUrl": "http:\/\/blanda.info\/sunt-repellat-quas-aperiam-vel-et-et.html",
"Quantity": "voluptatem",
"Value": "quia",
"DetailedDescription": "et",
"ItemComposition": "100% Cotton",
"DG": {
"Type": "nisi",
"ProductType": "adipisci",
"Capacity": "porro",
"CapacityUOM": "quod"
}
}
]
}
}
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/determinerouting';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'CreateParcel' => [
'Apikey' => 'in',
'IsTest' => true,
'Parcel' => [
'Source' => 'HERMES_CORP',
'ReasonForExport' => 'tempora',
'TrackingNumber' => 'ut',
'Manifest' => false,
'LabelType' => 'aut',
'LabelFormat' => 'debitis',
'FulfilmentOrigin' => 'corporis',
'ShipperReferenceID' => 'mollitia',
'CustomerReference1' => 'atque',
'CustomerReference2' => 'rerum',
'Shipper' => [
'AccountNumber' => 'voluptas',
'ContactName' => 'quia',
'Company' => 'eos',
'Address1' => 'qui',
'Address2' => 'eaque',
'Address3' => 'sit',
'City' => 'non',
'Country' => 'quia',
'Zip' => 'nostrum',
'CountryCode' => 'est',
'Phone' => 'ut',
'Email' => 'weissnat.trent@example.com',
'Vat' => 'ipsum',
'TaxID' => 'enim',
'Eori' => 'optio',
'RegNumber' => 'est',
'Url' => 'http://hodkiewicz.com/eligendi-officiis-in-saepe-aliquid-voluptas-et',
],
'Consignee' => [
'ContactName' => 'est',
'Company' => 'tempore',
'Address1' => 'magnam',
'Address2' => 'tenetur',
'Address3' => 'quod',
'City' => 'vitae',
'Country' => 'excepturi',
'Zip' => 'totam',
'CountryCode' => 'itaque',
'Phone' => 'at',
'Email' => 'carson25@example.com',
'Vat' => 'quia',
'PudoID' => 'quam',
'NationalID' => 'et',
'PassportNumber' => 'iusto',
'PassportIssueDate' => 'qui',
'PassportExpiryDate' => 'non',
'PassportIssuedBy' => 'est',
'PassportIssueCountryCode' => 'GB',
'ContactNameLocal' => 'molestiae',
'TaxID' => 'culpa',
],
'PaymentReferenceNumber' => 'quia',
'PaymentDateTime' => 'non',
'PaymentProvider' => 'occaecati',
'Service' => 'HERMES_INTERNATIONAL',
'Collect' => 'sit',
'Pieces' => '1',
'Weight' => '3.02',
'WeightUnit' => 'K',
'Length' => '4',
'Width' => '4',
'Height' => '4',
'DimUnit' => 'cm',
'DescriptionOfGoods' => 'voluptates',
'Value' => 'ad',
'ShippingCost' => 'dolores',
'Currency' => 'GBP',
'MerchantARN' => 'qui',
'PurchaserABN' => 'qui',
'GSTExemptionCode' => 'quam',
'Terms' => 'DDP',
'CODAmount' => '132.99',
'CODCurrency' => 'provident',
'DangerousGoods' => true,
'ShipperBrandingID' => 'dolorum',
'Items' => [
[
'Description' => 'Facere eius non error quidem.',
'SkuCode' => 'dignissimos',
'HsCode' => 'qui',
'CountryOfOrigin' => 'ut',
'PurchaseUrl' => 'http://www.mcglynn.net/animi-eum-ut-harum-architecto-aspernatur.html',
'ImageUrl' => 'http://blanda.info/sunt-repellat-quas-aperiam-vel-et-et.html',
'Quantity' => 'voluptatem',
'Value' => 'quia',
'DetailedDescription' => 'et',
'ItemComposition' => '100% Cotton',
'DG' => [
'Type' => 'nisi',
'ProductType' => 'adipisci',
'Capacity' => 'porro',
'CapacityUOM' => 'quod',
],
],
],
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
content-security-policy: base-uri 'self';connect-src 'self';default-src 'self';form-action 'self';img-src 'self' 'unsafe-eval' 'unsafe-inline' data:;media-src 'self';object-src 'none';script-src 'self' 'unsafe-eval' 'unsafe-inline' https://www.gstatic.com https://cdn.polyfill.io;style-src 'self' 'unsafe-eval' 'unsafe-inline' https://fonts.googleapis.com https://www.gstatic.com https://unpkg.com;font-src 'self' https://fonts.googleapis.com https://fonts.gstatic.com data:
access-control-allow-origin: *
set-cookie: XSRF-TOKEN=eyJpdiI6IjRrcTBubHZodGprbHdsQUs0bm54dEE9PSIsInZhbHVlIjoiZlplOU9hd0JNUi9mblplYzdyc1BaSUUySjZHQllUdmthZmI5RDQ5V0dYdWszVkNWZFdlK1hPcHJwdCtjWG5lSTVYdE0yZVA0RUY1VTRtc2dvRGo0M1VLQkJ1QTJPTUFVakY5bk1nRFBvRXRiRXBPMmxSbmxTMDB0WG8rc2ZVRnQiLCJtYWMiOiJiMjkxYWU3NGQ1NjY2NWQzNTRhOTE2MDJhNjIyYjU5NWRhNGRlOTExMzVlYjg1Mzg4NDZhODhkODQ4N2EyOTdjIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; samesite=lax; saaspatform_session=eyJpdiI6InNEaVdIWk1YZTR1RUJnUTFDeU9KRUE9PSIsInZhbHVlIjoiNXFJamIyanN0R2JHOHAzWUZ1MEFqenQzWW4ydk5XWlJJUW16L05XeXlaVHpZbzNYaytiR0FYcEo4bmd2TW9EUkFuTjBDcVFzSVVYUDZzeVg4N0ZjaUlpTmwxa0d5ZUo4SElrNkJJTzVKRFB5ZEdGVlJYeVNpSzlDUkpzaFJ4bFEiLCJtYWMiOiI1MGNlODg2MTAyNDZmMjdjMWM1ZGU1MmE3NTg1YzQ4MTAyYjVhYzlmY2JiYTcyZDFhM2UwZWY1YjhkZTE4Y2UzIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"code": "Unauthorized"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Hermes Cancel Parcels.
Store a newly created resource in storage. TODO: Move to ApiHermesCancelParcelAction
Example request:
curl --request DELETE \
"http://localhost/api/v1/hermes/parcels" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"tracking_numbers\": [],
\"api_key\": \"ipsam\",
\"CancelParcel\": {
\"Apikey\": \"id\",
\"Parcel\": {
\"TrackingNumber\": [
\"eos\"
]
}
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/parcels"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"tracking_numbers": [],
"api_key": "ipsam",
"CancelParcel": {
"Apikey": "id",
"Parcel": {
"TrackingNumber": [
"eos"
]
}
}
};
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/parcels';
$response = $client->delete(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'tracking_numbers' => [],
'api_key' => 'ipsam',
'CancelParcel' => [
'Apikey' => 'id',
'Parcel' => [
'TrackingNumber' => [
'eos',
],
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (200):
{
"tracking_number": "Error",
"another_tracking_number": "Canceled",
"third_tracking_number": "Error message"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
GET api/v1/hermes/automation-testing/parcels/{searchNumber}
Example request:
curl --request GET \
--get "http://localhost/api/v1/hermes/automation-testing/parcels/aliquid" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"http://localhost/api/v1/hermes/automation-testing/parcels/aliquid"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/automation-testing/parcels/aliquid';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (400):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"errors": [
"Malformed json content given"
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Change status of the parcel for QA purposes.
Example request:
curl --request PATCH \
"http://localhost/api/v1/hermes/automation-testing/parcels" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"UpdateParcel\": {
\"Parcels\": [
\"adipisci\"
]
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/automation-testing/parcels"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"UpdateParcel": {
"Parcels": [
"adipisci"
]
}
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/automation-testing/parcels';
$response = $client->patch(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'UpdateParcel' => [
'Parcels' => [
'adipisci',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
content-security-policy: base-uri 'self';connect-src 'self';default-src 'self';form-action 'self';img-src 'self' 'unsafe-eval' 'unsafe-inline' data:;media-src 'self';object-src 'none';script-src 'self' 'unsafe-eval' 'unsafe-inline' https://www.gstatic.com https://cdn.polyfill.io;style-src 'self' 'unsafe-eval' 'unsafe-inline' https://fonts.googleapis.com https://www.gstatic.com https://unpkg.com;font-src 'self' https://fonts.googleapis.com https://fonts.gstatic.com data:
access-control-allow-origin: *
set-cookie: XSRF-TOKEN=eyJpdiI6IjJNOTlqN0xJbjVSUDh0cW4vVHNWVHc9PSIsInZhbHVlIjoieGFTSUkxRlQzQlNsZEdvRE5sWEpjSjRFeUxNOVNqdFl6SVdQdkcxblJRVDFMVllpTUkwanJ5aTlUblRNS0YzREtKYkNtdUhFV2ZWZy9pWmVQa0hiUjdrbHNLcFpGY28yZThPTzhpTmZLdmlOZGdFVGp0UHZMeFFYakwyaEdZTkQiLCJtYWMiOiJjNTE3OWUyMzc0NzA5NDc1ZGU1NzBlZDQ5ZWNjNmI0ZjU5NjNiNzkyMWE4MTVlMjY3NmM3YzRiNDVlYTc5ODRiIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; samesite=lax; saaspatform_session=eyJpdiI6InFkR3BiT1lXODdiNFd5bEVKa2QzOWc9PSIsInZhbHVlIjoieTh3U1VSMEVGT0xpUFE3WG1Nc2h5TndONEhiSFVCUkRSQUIraytTWHpxckl3WEZQYTlwRmJ3bkJFa2d4TVBXZTAza0s2bXNkalExcVB3RlFQN1ZiWEwxQkUvLzRJL2E4RzFMaHBtQlBHWkxSVlhLTEJIb0RRRnRQSGlWcHl2bUgiLCJtYWMiOiIyOGVmM2U0YWYwZWM4NWU4Yjg3ODFhNDNhN2IyYWNiOTA2NTk2MDFlODUxN2M2ZmNmOWRlM2E2MWI1NjM3YjQzIiwidGFnIjoiIn0%3D; expires=Wed, 19-Jun-2024 05:40:04 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"code": "Unauthorized"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get tracking history for parcels.
Example request:
curl --request POST \
"http://localhost/api/v1/hermes/tracking" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"TrackParcel\": {
\"Apikey\": \"numquam\",
\"Parcels\": [
\"sed\"
]
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/tracking"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"TrackParcel": {
"Apikey": "numquam",
"Parcels": [
"sed"
]
}
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/tracking';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'TrackParcel' => [
'Apikey' => 'numquam',
'Parcels' => [
'sed',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (200):
{
"TrackParcelResponse": {
"Parcels": [
{
"TrackingNumber": "",
"ShipmentReferenceID": "",
"CarrierTrackingNumber": "",
"CarrierTrackingURL": "",
"ServiceName": "",
"CarrierName": "",
"Weight": 0,
"WeightUOM": "",
"OriginHub": "",
"Events": [
{
"EventDateTime": "2000-01-01 00:00:00",
"TrackingCode": 0,
"Description": "",
"Location": ""
}
]
},
{
"TrackingNumber": "",
"Error": "Parcel not found"
}
],
"ErrorLevel": 0,
"Error": null
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get PUDO points
Example request:
curl --request GET \
--get "http://localhost/api/v1/hermes/pudo?page=12" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"Pudo\": {
\"Apikey\": \"modi\",
\"PudoId\": \"odio\",
\"CarrierCode\": \"et\",
\"CarrierId\": 6,
\"ShippingAPIServiceId\": 14,
\"PerPage\": 2,
\"Page\": 20,
\"Address\": {
\"Country\": \"qui\",
\"State\": \"illum\",
\"Zip\": \"qui\",
\"City\": \"distinctio\",
\"Addr1\": \"est\",
\"Addr2\": \"et\",
\"Addr3\": \"eum\"
}
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/pudo"
);
const params = {
"page": "12",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"Pudo": {
"Apikey": "modi",
"PudoId": "odio",
"CarrierCode": "et",
"CarrierId": 6,
"ShippingAPIServiceId": 14,
"PerPage": 2,
"Page": 20,
"Address": {
"Country": "qui",
"State": "illum",
"Zip": "qui",
"City": "distinctio",
"Addr1": "est",
"Addr2": "et",
"Addr3": "eum"
}
}
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/pudo';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'page' => '12',
],
'json' => [
'Pudo' => [
'Apikey' => 'modi',
'PudoId' => 'odio',
'CarrierCode' => 'et',
'CarrierId' => 6,
'ShippingAPIServiceId' => 14,
'PerPage' => 2,
'Page' => 20,
'Address' => [
'Country' => 'qui',
'State' => 'illum',
'Zip' => 'qui',
'City' => 'distinctio',
'Addr1' => 'est',
'Addr2' => 'et',
'Addr3' => 'eum',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (200):
{
'PudoResponse': {
'Pudo': [
{
'PudoId': '',
'Alias': '',
'Title': '',
'Country': '',
'State': '',
'Zip': '',
'City': '',
'Addr1': '',
'Addr2': '',
'Addr3': '',
'Lat': 0.0
'Lng': 0.0
'ShippingAPIServiceId': [],
'AvailableServices': [],
'AvailableLabelFormats': [],
'WorkHours': {},
'Additional': {},
},
],
'Page': 1,
'LastPage': 2,
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Locate stores by country and zip
Example request:
curl --request GET \
--get "http://localhost/api/v1/hermes/pudo/locate" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"LocateStore\": {
\"Apikey\": \"nihil\",
\"CountryCode\": \"eum\",
\"ZipCode\": \"labore\"
}
}"
const url = new URL(
"http://localhost/api/v1/hermes/pudo/locate"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"LocateStore": {
"Apikey": "nihil",
"CountryCode": "eum",
"ZipCode": "labore"
}
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());$client = new \GuzzleHttp\Client();
$url = 'http://localhost/api/v1/hermes/pudo/locate';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'LocateStore' => [
'Apikey' => 'nihil',
'CountryCode' => 'eum',
'ZipCode' => 'labore',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));Example response (200):
{
'LocateStoreResponse': {
'Stores': [
{
'ID': '',
'Carrier': '',
'Name': '',
'Address1': '',
'Address2': '',
'Address3': '',
'City': '',
'State': '',
'ZipCode': '',
'CountryCode': '',
'Latitude': 0.0
'Longitude': 0.0
'OpeningTimes': [],
}
]
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.