Sending a Request for Quotation (RFQ)
This guide details how to send a Request for Quotation (RFQ) using our API. The process is straightforward, utilizing a REST endpoint to automate and streamline your RFQ submissions.
Endpoint Details
- Method: POST
- URL:
/api/v2/customer/{CUSTOMER_ID}/rfq - Content-Type:
application/json - Authentication: Requires an API Key in the request header.
Headers
| Header | Type | Required | Description |
|---|---|---|---|
| X-Api-Key | String | ✅ | Your API key for authentication |
RFQ Request Parameters
Below are the required and optional parameters for sending an RFQ.
Top-Level Fields
| Field | Type | Required | Description |
|---|---|---|---|
| request | Object | ✅ | The RFQ request details |
| requester | Object | ✅ | Contact information of the person submitting the RFQ |
| teamMembers | Array of Strings | ❌ | Email addresses of additional team members |
Request Object Fields
| Field | Type | Required | Description |
|---|---|---|---|
| servicesNeeded | Array of Strings | ✅ | List of required services. Accepted values: "Cross-Docking", "Storage", "Final Mile / Local Delivery", "Drayage", "Rework / Restack", "Transloading", "Disposal", "Yard Storage / Trailer Parking" |
| freightEnvironment | String | ✅ | Accepted values: "Dry", "Specific", "Freeze" |
| certifications | Array of Strings | ❌ | Optional certifications: "Bonded", "Hazmat", "Food Grade" |
| hazmatClasses | Array of Strings | ❌ | Required if "Hazmat" certification is selected. Allowed values: "Hazmat 1" - "Hazmat 9" |
| serviceLocation | Object | ✅ | The location where service is required (see Location Object below) |
| startDate | String | ✅ | Date format: YYYY-MM-DD (ISO 8601) |
| endDate | String | ✅ | Date format: YYYY-MM-DD (ISO 8601) |
| commodity | String | ❌ | Description of the commodity being shipped |
| loadNumber | String | ❌ | Identifier for the load or container |
| unitType | String | ✅ | Type of unit. Allowed values: "Pallet - Standard", "Floor Loaded", "Crate", "Paper Roll", "Non-Standard Freight", "Slip Sheet", "Carpet Roll", "Carton", "Drum/Barrel", "Freight Bale", "Freight Weight (lb)", "Gaylord", "Load", "Square Feet", "Super Sack", "Tires", "Pallet - Oversized" |
| numberOfUnits | Integer | ✅ | Must be greater than 0 |
| notes | String | ❌ | Additional details or special instructions |
| lowTempControlled | Number | ❌ | Required if freightEnvironment is "Specific" |
| highTempControlled | Number | ❌ | Required if freightEnvironment is "Specific" |
| spaceNeeded | Number | ❌ | Space required for storage (if applicable) |
| targetRate | Number | ❌ | Customer's target price (if applicable) |
| metadata | Object | ❌ | Custom metadata for tracking additional data |
Location Object Fields
| Field | Type | Required | Description |
|---|---|---|---|
| streetAddress | String | ❌ | Street address (if available) |
| city | String | ❌ | City name |
| state | String | ✅ | State name (Required) |
| country | String | ✅ | Country name (Required) |
| postalCode | String | ❌ | Postal code (Optional) |
Example Request Body
{
"teamMembers": ["johndoeteammember@techgadgetsinc.com"],
"request": {
"servicesNeeded": ["Cross-Docking", "Storage"],
"freightEnvironment": "Dry",
"certifications": ["Bonded", "Hazmat"],
"serviceLocation": {
"streetAddress": "1234 Warehouse Drive",
"city": "Logistics City",
"state": "Transport",
"country": "SupplyLand",
"postalCode": "123456"
},
"startDate": "2024-04-01",
"endDate": "2024-04-10",
"commodity": "Electronics",
"loadNumber": "LC123456789",
"unitType": "Pallet - Standard",
"numberOfUnits": 50,
"notes": "Please handle with care, fragile items."
},
"requester": {
"firstName": "John",
"lastName": "Doe",
"title": "Procurement Manager",
"location": {
"streetAddress": "1234 Warehouse Drive",
"city": "Logistics City",
"state": "Transport",
"country": "SupplyLand",
"postalCode": "123456"
},
"email": "johndoe@techgadgetsinc.com",
"phone": "+12034567890"
}
}