Overview
This document provides details on how to integrate with the Advance Shipping Notice API.
Endpoints
Receive Advance Shipping Notice
POST /api/AdvanceShippingNotice
Receives a new advance shipping notice. The request body must be in JSON format and contain the following schema:
{ "shipmentNumber": "string", "shippingDate": "date-time", "expectedDeliveryDate": "date-time", "shipFromAddress": { "name": "string", "line1": "string", "line2": "string", "city": "string", "region": "string", "zipCode": "string", "country": "string", "phoneNumber": "string" }, "shipToAddress": { "name": "string", "line1": "string", "line2": "string", "city": "string", "region": "string", "zipCode": "string", "country": "string", "phoneNumber": "string" }, "purchaseOrderNumber": "string", "products": [ { "name": "string", "itemDetails": [ { "lotCode": "string", "quantity": 0, "unitOfMeasure": "string", "lotCodeSource": { "name": "string", "line1": "string", "line2": "string", "city": "string", "region": "string", "zipCode": "string", "country": "string", "phoneNumber": "string" } } ] } ] }
Example Response
{ "id": "123e4567-e89b-12d3-a456-426614174000" }
Enum Definitions
codeType:
1
= GS1-1282
= TLC
Get Advance Shipping Notice
GET /api/AdvanceShippingNotice/{id}
Retrieves an advance shipping notice by ID. The ID must be a valid GUID.
Example Response
{ "id": "123e4567-e89b-12d3-a456-426614174000", "shipmentNumber": "string", "shippingDate": "date-time", "expectedDeliveryDate": "date-time", "shipFromAddress": { "name": "string", "line1": "string", "line2": "string", "city": "string", "region": "string", "zipCode": "string", "country": "string", "phoneNumber": "string" }, "shipToAddress": { "name": "string", "line1": "string", "line2": "string", "city": "string", "region": "string", "zipCode": "string", "country": "string", "phoneNumber": "string" }, "purchaseOrderNumber": "string", "products": [ { "name": "string", "itemDetails": [ { "lotCode": "string", "quantity": 0, "unitOfMeasure": "string" } ] } ] }
List Advance Shipping Notices
GET /api/AdvanceShippingNotice
Lists all advance shipping notices.
Example Response
[ { "id": "123e4567-e89b-12d3-a456-426614174000", "shipmentNumber": "string", "shippingDate": "date-time", "expectedDeliveryDate": "date-time", "shipFromAddress": { "name": "string", "line1": "string", "line2": "string", "city": "string", "region": "string", "zipCode": "string", "country": "string", "phoneNumber": "string" }, "shipToAddress": { "name": "string", "line1": "string", "line2": "string", "city": "string", "region": "string", "zipCode": "string", "country": "string", "phoneNumber": "string" }, "purchaseOrderNumber": "string", "products": [ { "name": "string", "itemDetails": [ { "lotCode": "string", "quantity": 0, "unitOfMeasure": "string", "lotCodeSource": { "name": "string", "line1": "string", "line2": "string", "city": "string", "region": "string", "zipCode": "string", "country": "string", "phoneNumber": "string" } } ] } ] } ]
Security
All requests must include an API key in the header:
Provision-Api-Key: your-api-key
The API key is used to authorize the request. If the API key is missing or invalid, the request will be rejected with a 401 Unauthorized response.
Examples
Receive Advance Shipping Notice
curl -X POST https://api.provision.io/api/AdvanceShippingNotice \ -H "Provision-Api-Key: your-api-key" \ -H "Content-Type: application/json" \ -d '{ "noticeContent": { "shipmentNumber": "BOL-456789", "shippingDate": "2025-04-01T12:30:00Z", "expectedDeliveryDate": "2025-04-01T15:30:00Z", "shipFromAddress": { "name": "FreshLeaf Farms", "line1": "123 Grower Lane", "city": "Salinas", "region": "CA", "zipCode": "93901", "country": "USA", "phoneNumber": "+1-555-123-4567" }, "shipToAddress": { "name": "Provision Receiving Dock 1", "line1": "456 Receiving Blvd", "city": "Fresno", "region": "CA", "zipCode": "93722", "country": "USA", "phoneNumber": "+1-555-987-6543" }, "purchaseOrderNumber": "BOL-456789", "products": [ { "name": "Organic Roma Tomatoes, 1 lb Clamshell, Brand: FreshLeaf", "itemDetails": [ { "lotCode": "LOT-20250401-A123", "quantity": 100, "unitOfMeasure": "cases", "lotCodeSource": { "name": "FreshLeaf Farms", "line1": "123 Grower Lane", "city": "Salinas", "region": "CA", "zipCode": "93901", "country": "USA", "phoneNumber": "+1-555-123-4567" } } ] }, { "name": "Organic Cucumbers, 3 lb Case, Brand: FreshLeaf", "itemDetails": [ { "lotCode": "LOT-20250401-B124", "quantity": 125, "unitOfMeasure": "cases", "lotCodeSource": { "name": "FreshLeaf Farms", "line1": "123 Grower Lane", "city": "Salinas", "region": "CA", "zipCode": "93901", "country": "USA", "phoneNumber": "+1-555-123-4567" } } ] } ] } }'
Get Advance Shipping Notice
curl -X GET https://api.provision.io/api/AdvanceShippingNotice/{id} \ -H "Provision-Api-Key: your-api-key"
List Advance Shipping Notices
curl -X GET https://api.provision.io/api/AdvanceShippingNotice \ -H "Provision-Api-Key: your-api-key"
API Key Assignment
The Client Success Team is responsible for assigning or creating an API key for each client's integrator. This ensures that each client has a unique key to access the API securely.
In the near future, this process will be improved and moved into the client's panel, allowing clients to manage their API keys directly from their dashboard.