ecomdash API
The ecomdash API allows third party software to integrate with the inventory management module of ecomdash.
Request URL
Request headers
The API integration key from the ecomdash account. This can be found by an ecomdash customer in ecomdash by launching the relevant App Store application
Request body
Attribute | Type / Valid Values | Requirement | Description |
---|---|---|---|
StorefrontOrderId | string | Optional | The ID of the sales order on the storefront the order is being added to. |
StorefrontOrderNumber | string | Required | The Order Number of the sales order on the storefront the order is being added to. |
StorefrontId | decimal | Required | The ID of the ecomdash Storefront the order is being added to. You can find the IDs of the storefronts for a company using the '/Storefronts' call. |
Status | string | Required |
The status of the order at the time it is being added into ecomdash.
|
TotalAmount | decimal | Optional | The total of the order, including Tax amounts, Discounts, Shipping, and the items in the LineItems collection. |
Tax1Amount | decimal | Optional | A tax amount for the order, there are 3 fields for taxes that can be used. |
Tax2Amount | decimal | Optional | A tax amount for the order, there are 3 fields for taxes that can be used. |
Tax3Amount | decimal | Optional | A tax amount for the order, there are 3 fields for taxes that can be used. |
DiscountAmount | decimal | Optional | If any discounts were applied to this order, this would include that value. |
ShippingAmountCollected | decimal | Optional | If any shipping & handling charges were applied to this order, this would include that value. |
OtherAmount | decimal | Optional | An open currency field for any other price adjustments not covered by the other columns. |
Comments | string | Optional | Any comments or order notes associated with the order. |
PurchaseDate | DateTime | Optional |
The date/time the transaction occurred. Default: The PurchaseDate or if missing, the date/time the order is added into ecomdash |
PaymentReceivedDate | DateTime | Conditional |
The date/time the payment for this sales order was received. Note: This field is required when the Status is either 'Complete' or 'InProcess' |
DeliveryMethod | string | Optional | "Pickup" or "Delivery", if omitted, "Delivery" will be used. |
ShippingCarrierRequested | string | Optional | If any, the carrier requested for shipment. |
ShippingServiceRequested | string | Optional |
The shipment service requested by the customer when making the purchase.
|
ShipToCustomerInfo | bool | Optional |
Determines if CustomerInfo information should used for shipping information. Default: false |
CustomerInfo | object | Optional | The customer or billing information for the order. While this is optional in ecomdash, if it is missing, certain functions in ecomdash will fail for this sales order, such as automatic emails and possibly shipping. |
CustomerInfo.CompanyName | string | Optional | The company name of the customer |
CustomerInfo.FullName | string | Optional | The customer's full name |
CustomerInfo.FirstName | string | Optional | The customer's first name |
CustomerInfo.LastName | string | Optional | The customer's last name |
CustomerInfo.EmailAddress | string | Optional | The customer's email address |
CustomerInfo.Phone | string | Optional | The customer's phone number |
CustomerInfo.FaxNumber | string | Optional | The customer's fax number |
CustomerInfo.Address | object | Optional | The customer's billing address. |
CustomerInfo.Address.Street1 | string | Optional | The 1st street line for the customer's billing address. |
CustomerInfo.Address.Street2 | string | Optional | The 2nd street line for the customer's billing address. |
CustomerInfo.Address.Street3 | string | Optional | The 3rd street line for the customer's billing address. |
CustomerInfo.Address.City | string | Optional | The city for the customer's billing address. |
CustomerInfo.Address.State | string | Optional |
The state abbreviation for the customer's billing address. |
CustomerInfo.Address.Country | string | Optional | The two character code for the country of the customer's billing address. |
CustomerInfo.Address.ZipCode | string | Optional | The zip code for the customer's billing address. |
CustomerInfo.Address.UrbanizationCode | string | Optional | Some countries use Urbanization codes instead of zip codes. This field is for these cases for the Customer's billing address |
CustomerInfo.Address.IsResidential | bool | Optional |
A flag for to mark the customer's billing address as a residential address. If used for shipping, this may affect shipping rates. Default: false |
ShippingInfo | object | Optional | The shipping contact information for the order. While this is optional in ecomdash, if it is missing or is missing information, certain functions in ecomdash will fail for this sales order, such as generation of labels for shipping. |
ShippingInfo.CompanyName | string | Optional | The company name associated with the shipping address |
ShippingInfo.FullName | string | Optional | The full name associated with the shipping address |
ShippingInfo.FirstName | string | Optional | The first name associated with the shipping address |
ShippingInfo.LastName | string | Optional | The last name associated with the shipping address |
ShippingInfo.EmailAddress | string | Optional | The email address associated with the shipping address |
ShippingInfo.Phone | string | Optional | The phone number associated with the shipping address |
ShippingInfo.FaxNumber | string | Optional | The fax number associated with the shipping address |
ShippingInfo.Address | object | Optional | The order's shipping address. |
ShippingInfo.Address.Street1 | string | Optional | The 1st street line for the order's shipping address. |
ShippingInfo.Address.Street2 | string | Optional | The 2nd street line for the order's shipping address. |
ShippingInfo.Address.Street3 | string | Optional | The 3rd street line for the order's shipping address. |
ShippingInfo.Address.City | string | Optional | The city for the order's shipping address. |
ShippingInfo.Address.State | string | Optional |
The state abbreviation for the order's shipping address. |
ShippingInfo.Address.Country | string | Optional | The two character code for the country of the order's shipping address. |
ShippingInfo.Address.ZipCode | string | Optional | The zip code for the order's shipping address. |
ShippingInfo.Address.UrbanizationCode | string | Optional | Some countries use Urbanization codes instead of zip codes. This field is for these cases for the order's shipping address |
ShippingInfo.Address.IsResidential | bool | Optional |
A flag for to mark the order's shipping address as a residential address. If used for shipping, this may affect shipping rates. Default: false |
LineItems | array | Required | The array of items in the sales order |
LineItems[].QuantitySold | decimal | Required | The quantity sold for this product in this line item. This number must be greater than zero. |
LineItems[].UnitPrice | decimal | Conditional | The unit price of the product in this line item. Either the UnitPrice or LineItemTotal are required. |
LineItems[].LineItemTotal | decimal | Conditional | The pre-calculated total for the line item (QuantitySold * UnitPrice). Either the UnitPrice or LineItemTotal are required. |
LineItems[].SoldAsName | string | Optional | The name the product was sold with. This would show up on packing slips, invoices, etc. If not passed in, the product's name will be used. |
LineItems[].EcommerceLineItemId | string | Optional | The ID of the line item in the source system of this sales order. |
LineItems[].EcommerceTransactionId | string | Optional | The ID of the transaction for this line item in the source system of this sales order. |
LineItems[].WarehouseId | decimal | Optional | The Id of the warehouse the products Quantity on Hand should be reduced from. If not passed in, the product's default priority order in ecomdash will be used. |
{
"StorefrontOrderId": "string",
"StorefrontOrderNumber": "string",
"StorefrontId": 0.0,
"Status": "Cancelled",
"TotalAmount": 0.0,
"Tax1Amount": 0.0,
"Tax2Amount": 0.0,
"Tax3Amount": 0.0,
"DiscountAmount": 0.0,
"ShippingAmountCollected": 0.0,
"OtherAmount": 0.0,
"Comments": "string",
"PurchaseDate": "string",
"PaymentReceivedDate": "string",
"DeliveryMethod": "Shipping",
"ShippingCarrierRequested": "string",
"ShippingServiceRequested": "string",
"ShipToCustomerInfo": true,
"CustomerInfo": {
"CompanyName": "string",
"FullName": "string",
"FirstName": "string",
"LastName": "string",
"EmailAddress": "string",
"Phone": "string",
"FaxNumber": "string",
"Address": {
"Street1": "string",
"Street2": "string",
"Street3": "string",
"City": "string",
"State": "string",
"Country": "string",
"ZipCode": "string",
"UrbanizationCode": "string",
"IsResidential": true
}
},
"ShippingInfo": {
"CompanyName": "string",
"FullName": "string",
"FirstName": "string",
"LastName": "string",
"EmailAddress": "string",
"Phone": "string",
"FaxNumber": "string",
"Address": {
"Street1": "string",
"Street2": "string",
"Street3": "string",
"City": "string",
"State": "string",
"Country": "string",
"ZipCode": "string",
"UrbanizationCode": "string",
"IsResidential": true
}
},
"LineItems": [
{
"ProductId": 0.0,
"QuantitySold": 0.0,
"UnitPrice": 0.0,
"LineItemTotal": 0.0,
"SoldAsName": "string",
"EcommerceLineItemId": "string",
"EcommerceTransactionId": "string",
"WarehouseId": 0.0
}
]
}
{
"title": "OrderCreation",
"type": "object",
"additionalProperties": false,
"properties": {
"StorefrontOrderId": {
"type": "string"
},
"StorefrontOrderNumber": {
"type": "string"
},
"StorefrontId": {
"type": "number",
"format": "decimal"
},
"Status": {
"type": "string",
"description": "",
"x-enumNames": [
"Cancelled",
"Complete",
"InProcess",
"New"
],
"enum": [
"Cancelled",
"Complete",
"InProcess",
"New"
]
},
"TotalAmount": {
"type": "number",
"format": "decimal"
},
"Tax1Amount": {
"type": "number",
"format": "decimal"
},
"Tax2Amount": {
"type": "number",
"format": "decimal"
},
"Tax3Amount": {
"type": "number",
"format": "decimal"
},
"DiscountAmount": {
"type": "number",
"format": "decimal"
},
"ShippingAmountCollected": {
"type": "number",
"format": "decimal"
},
"OtherAmount": {
"type": "number",
"format": "decimal"
},
"Comments": {
"type": "string"
},
"PurchaseDate": {
"type": "string",
"format": "date-time"
},
"PaymentReceivedDate": {
"type": "string",
"format": "date-time"
},
"DeliveryMethod": {
"type": "string",
"description": "",
"x-enumNames": [
"Shipping",
"Pickup"
],
"enum": [
"Shipping",
"Pickup"
]
},
"ShippingCarrierRequested": {
"type": "string"
},
"ShippingServiceRequested": {
"type": "string"
},
"ShipToCustomerInfo": {
"type": "boolean"
},
"CustomerInfo": {
"type": "object",
"additionalProperties": false,
"properties": {
"CompanyName": {
"type": "string"
},
"FullName": {
"type": "string"
},
"FirstName": {
"type": "string"
},
"LastName": {
"type": "string"
},
"EmailAddress": {
"type": "string"
},
"Phone": {
"type": "string"
},
"FaxNumber": {
"type": "string"
},
"Address": {
"type": "object",
"additionalProperties": false,
"properties": {
"Street1": {
"type": "string"
},
"Street2": {
"type": "string"
},
"Street3": {
"type": "string"
},
"City": {
"type": "string"
},
"State": {
"type": "string"
},
"Country": {
"type": "string"
},
"ZipCode": {
"type": "string"
},
"UrbanizationCode": {
"type": "string"
},
"IsResidential": {
"type": "boolean"
}
}
}
}
},
"ShippingInfo": {
"type": "object",
"additionalProperties": false,
"properties": {
"CompanyName": {
"type": "string"
},
"FullName": {
"type": "string"
},
"FirstName": {
"type": "string"
},
"LastName": {
"type": "string"
},
"EmailAddress": {
"type": "string"
},
"Phone": {
"type": "string"
},
"FaxNumber": {
"type": "string"
},
"Address": {
"type": "object",
"additionalProperties": false,
"properties": {
"Street1": {
"type": "string"
},
"Street2": {
"type": "string"
},
"Street3": {
"type": "string"
},
"City": {
"type": "string"
},
"State": {
"type": "string"
},
"Country": {
"type": "string"
},
"ZipCode": {
"type": "string"
},
"UrbanizationCode": {
"type": "string"
},
"IsResidential": {
"type": "boolean"
}
}
}
}
},
"LineItems": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"ProductId"
],
"properties": {
"ProductId": {
"type": "number",
"format": "decimal"
},
"QuantitySold": {
"type": "number",
"format": "decimal"
},
"UnitPrice": {
"type": "number",
"format": "decimal"
},
"LineItemTotal": {
"type": "number",
"format": "decimal"
},
"SoldAsName": {
"type": "string"
},
"EcommerceLineItemId": {
"type": "string"
},
"EcommerceTransactionId": {
"type": "string"
},
"WarehouseId": {
"type": "number",
"format": "decimal"
}
}
}
}
}
}
Response 200
A 200 response returned is returned when the Header and Order information is accepted by our servers. If there are any validation errors, you will still receive a 200 response, but the status and validation messages will be returned and there will not be an Order returned.
{
"status": "Success",
"messages": [],
"data": {
"Order": {
"EcomdashId": 234,
"StorefrontOrderId": "9898989-7",
"StorefrontOrderNumber": "ProductOrderNumber5",
"StorefrontId": 10528,
"StorefrontName": "houz",
"StorefrontType": "Other",
"OrderNumber": "27",
"Status": "Complete",
"TotalAmount": 14.21,
"Tax1Amount": 3.26,
"ShippingAmountCollected": 0,
"Comments": "Created by the API on today",
"PurchaseDate": "2016-11-15T14:54:49.847",
"PaymentReceivedDate": "2016-11-14T14:54:00",
"DateCreatedInEcomdash": "2016-11-15T14:55:08.57",
"IsFBA": false,
"ShipToCustomerInfo": false,
"CustomerContactId": 53407,
"CustomerInfo": {
"Id": 53407,
"CompanyName": "",
"FullName": "Bob Johnson",
"FirstName": "Bob",
"LastName": "Johnson",
"EmailAddress": "bob.johnson@ecomdash.com",
"BusinessPhone": "704-555-5678",
"AddressId": 54089,
"Address": {
"Id": 54089,
"Street1": "3986 Trade St",
"City": "Charlotte",
"State": "NC",
"Country": "US",
"ZipCode": "28221",
"IsResidential": true
}
},
"ShippingAddressId": 54088,
"NeedsFulfillment": true,
"ShippingInfo": {
"Id": 0,
"FullName": "Bob Johnson",
"EmailAddress": "bob.johnson@ecomdash.com",
"BusinessPhone": "704-555-1234",
"AddressId": 54088,
"Address": {
"Id": 54088,
"Street1": "Building A",
"Street2": "9319 Martin Luther King Rd.",
"City": "Charlotte",
"State": "NC",
"Country": "US",
"ZipCode": "28223",
"IsResidential": true
}
},
"LineItems": [
{
"OrderLineItemId": 10268,
"SalesOrderId": 234,
"ProductId": 234990,
"QuantitySold": 2,
"QuantityNotTiedToShipment": 2,
"UnitPrice": 8.99,
"LineItemTotal": 17.98,
"SkuNumber": "joan1",
"ProductName": "joan",
"SoldAsName": "Joan of Arc T-Shirt"
},
{
"OrderLineItemId": 10269,
"SalesOrderId": 234,
"ProductId": 234976,
"QuantitySold": 1,
"QuantityNotTiedToShipment": 1,
"UnitPrice": 7.99,
"LineItemTotal": 7.99,
"SkuNumber": "HP4630",
"ProductName": "HP Officejet 4630",
"SoldAsName": "HP Officejet 4630",
"WarehouseId": 76,
"WarehouseName": "Warehouse A"
}
]
},
"WasSuccessful": true,
"Messages": []
}
}
{
"title": "ResponseOfCreateOrderResponse",
"type": "object",
"additionalProperties": false,
"properties": {
"status": {
"type": "string"
},
"messages": {
"type": "array",
"items": {
"type": "string"
}
},
"pagination": {
"type": "object",
"additionalProperties": false,
"properties": {
"CurrentPage": {
"type": "integer",
"format": "int32"
},
"TotalNumberOfEntries": {
"type": "integer",
"format": "int32"
},
"TotalNumberOfPages": {
"type": "integer",
"format": "int32"
}
}
},
"data": {
"type": "object",
"additionalProperties": false,
"properties": {
"Order": {
"title": "Order",
"type": "object",
"additionalProperties": false,
"properties": {
"EcomdashId": {
"type": "number",
"format": "decimal"
},
"StorefrontOrderId": {
"type": "string"
},
"StorefrontOrderNumber": {
"type": "string"
},
"StorefrontId": {
"type": "number",
"format": "decimal"
},
"StorefrontName": {
"type": "string"
},
"StorefrontType": {
"type": "string"
},
"OrderNumber": {
"type": "string"
},
"Status": {
"type": "string",
"description": "",
"x-enumNames": [
"Cancelled",
"Complete",
"InProcess",
"New"
],
"enum": [
"Cancelled",
"Complete",
"InProcess",
"New"
]
},
"TotalAmount": {
"type": "number",
"format": "decimal"
},
"Tax1Amount": {
"type": "number",
"format": "decimal"
},
"Tax2Amount": {
"type": "number",
"format": "decimal"
},
"Tax3Amount": {
"type": "number",
"format": "decimal"
},
"DiscountAmount": {
"type": "number",
"format": "decimal"
},
"ShippingAmountCollected": {
"type": "number",
"format": "decimal"
},
"OtherAmount": {
"type": "number",
"format": "decimal"
},
"PayPalTransactionIds": {
"type": "array",
"items": {
"type": "string"
}
},
"Comments": {
"type": "string"
},
"PurchaseDate": {
"type": "string",
"format": "date-time"
},
"PaymentReceivedDate": {
"type": "string",
"format": "date-time"
},
"LastModifiedDate": {
"type": "string",
"format": "date-time"
},
"DateCreatedInEcomdash": {
"type": "string",
"format": "date-time"
},
"eBaySellingProRecordNumber": {
"type": "number",
"format": "decimal"
},
"IsFBA": {
"type": "boolean"
},
"IsAmazonPrime": {
"type": "boolean"
},
"ShippingCarrierRequested": {
"type": "string"
},
"ShippingServiceRequested": {
"type": "string"
},
"ShipmentServiceType": {
"type": "string"
},
"ShipToCustomerInfo": {
"type": "boolean"
},
"CustomerContactId": {
"type": "number",
"format": "decimal"
},
"CustomerInfo": {
"type": "object",
"additionalProperties": false,
"properties": {
"Id": {
"type": "number",
"format": "decimal"
},
"CompanyName": {
"type": "string"
},
"FullName": {
"type": "string"
},
"FirstName": {
"type": "string"
},
"LastName": {
"type": "string"
},
"EmailAddress": {
"type": "string"
},
"BusinessPhone": {
"type": "string"
},
"MobilePhone": {
"type": "string"
},
"FaxNumber": {
"type": "string"
},
"AddressId": {
"type": "number",
"format": "decimal"
},
"Address": {
"type": "object",
"additionalProperties": false,
"properties": {
"Id": {
"type": "number",
"format": "decimal"
},
"Street1": {
"type": "string"
},
"Street2": {
"type": "string"
},
"Street3": {
"type": "string"
},
"City": {
"type": "string"
},
"State": {
"type": "string"
},
"Country": {
"type": "string"
},
"ZipCode": {
"type": "string"
},
"UrbanizationCode": {
"type": "string"
},
"IsResidential": {
"type": "boolean"
}
}
}
}
},
"ShippingAddressId": {
"type": "number",
"format": "decimal"
},
"NeedsFulfillment": {
"type": "boolean"
},
"IsOnHold": {
"type": "boolean"
},
"DeliveryMethod": {
"type": "string",
"description": "",
"x-enumNames": [
"Shipping",
"Pickup"
],
"enum": [
"Shipping",
"Pickup"
]
},
"ShippingInfo": {
"type": "object",
"additionalProperties": false,
"properties": {
"Id": {
"type": "number",
"format": "decimal"
},
"CompanyName": {
"type": "string"
},
"FullName": {
"type": "string"
},
"FirstName": {
"type": "string"
},
"LastName": {
"type": "string"
},
"EmailAddress": {
"type": "string"
},
"BusinessPhone": {
"type": "string"
},
"MobilePhone": {
"type": "string"
},
"FaxNumber": {
"type": "string"
},
"AddressId": {
"type": "number",
"format": "decimal"
},
"Address": {
"type": "object",
"additionalProperties": false,
"properties": {
"Id": {
"type": "number",
"format": "decimal"
},
"Street1": {
"type": "string"
},
"Street2": {
"type": "string"
},
"Street3": {
"type": "string"
},
"City": {
"type": "string"
},
"State": {
"type": "string"
},
"Country": {
"type": "string"
},
"ZipCode": {
"type": "string"
},
"UrbanizationCode": {
"type": "string"
},
"IsResidential": {
"type": "boolean"
}
}
}
}
},
"LineItems": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"OrderLineItemId": {
"type": "number",
"format": "decimal"
},
"SalesOrderId": {
"type": "number",
"format": "decimal"
},
"ProductId": {
"type": "number",
"format": "decimal"
},
"QuantitySold": {
"type": "number",
"format": "decimal"
},
"QuantityNotTiedToShipment": {
"type": "number",
"format": "decimal"
},
"UnitPrice": {
"type": "number",
"format": "decimal"
},
"LineItemTotal": {
"type": "number",
"format": "decimal"
},
"SkuNumber": {
"type": "string"
},
"ProductName": {
"type": "string"
},
"SoldAsName": {
"type": "string"
},
"EcommerceLineItemId": {
"type": "string"
},
"EcommerceTransactionId": {
"type": "string"
},
"EcommerceShipmentId": {
"type": "string"
},
"SupplierId": {
"type": "number",
"format": "decimal"
},
"SupplierName": {
"type": "string"
},
"WarehouseId": {
"type": "number",
"format": "decimal"
},
"WarehouseName": {
"type": "string"
},
"IsKit": {
"type": "boolean"
}
}
}
}
},
"example": {
"EcomdashId": 59510189,
"StorefrontOrderId": "string",
"StorefrontOrderNumber": "string",
"StorefrontId": 9454,
"StorefrontName": "string",
"StorefrontType": "string",
"OrderNumber": "string",
"Status": "string",
"TotalAmount": 10.61,
"Tax1Amount": 0.87,
"Tax2Amount": 0.55,
"Tax3Amount": 0.42,
"DiscountAmount": 1.13,
"ShippingAmountCollected": 3,
"OtherAmount": 3.54,
"PayPalTransactionIds": [
"string"
],
"Comments": "string",
"PurchaseDate": "string",
"PaymentReceivedDate": "string",
"LastModifiedDate": "string",
"DateCreatedInEcomdash": "string",
"eBaySellingProRecordNumber": 71665,
"IsFBA": false,
"IsAmazonPrime": false,
"ShippingCarrierRequested": "string",
"ShippingServiceRequested": "string",
"ShipmentServiceType": "string",
"ShipToCustomerInfo": false,
"CustomerContactId": 966179,
"CustomerInfo": {
"Id": 966179,
"CompanyName": "string",
"FullName": "string",
"FirstName": "string",
"LastName": "string",
"EmailAddress": "string",
"BusinessPhone": "string",
"MobilePhone": "string",
"FaxNumber": "string",
"AddressId": 91593,
"Address": {
"Id": 91593,
"Street1": "string",
"Street2": "string",
"Street3": "string",
"City": "string",
"State": "string",
"Country": "string",
"ZipCode": "string",
"UrbanizationCode": "string",
"IsResidential": false
}
},
"ShippingAddressId": 6291593,
"NeedsFulfillment": false,
"IsOnHold": false,
"DeliveryMethod": "string",
"ShippingInfo": {
"Id": 0.722554637095157,
"CompanyName": "string",
"FullName": "string",
"FirstName": "string",
"LastName": "string",
"EmailAddress": "string",
"BusinessPhone": "string",
"MobilePhone": "string",
"FaxNumber": "string",
"AddressId": 6291593,
"Address": {
"Id": 6291593,
"Street1": "string",
"Street2": "string",
"Street3": "string",
"City": "string",
"State": "string",
"Country": "string",
"ZipCode": "string",
"UrbanizationCode": "string",
"IsResidential": false
}
},
"LineItems": [
{
"OrderLineItemId": 88840012,
"SalesOrderId": 59510189,
"ProductId": 293033,
"QuantitySold": 2,
"QuantityNotTiedToShipment": 29,
"UnitPrice": 3,
"LineItemTotal": 6,
"SkuNumber": "string",
"ProductName": "string",
"SoldAsName": "string",
"EcommerceLineItemId": "string",
"EcommerceTransactionId": "string",
"EcommerceShipmentId": "string",
"SupplierId": 782,
"SupplierName": "string",
"WarehouseId": 2138815,
"WarehouseName": "string"
}
]
}
}
},
"allOf": [
{
"type": "object",
"additionalProperties": false,
"properties": {
"WasSuccessful": {
"type": "boolean"
},
"Messages": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
]
}
}
}
Response 400
A 400 - Bad Request response is sent back when the server cannot successfully parse your JSON object into an Order object to input into ecomdash.
{
"Message": "The request body was not in a valid format to create a sales order. Please refer to the documentation for the proper format."
}
Response 403
A 403 Forbidden response is returned when we cannot find an active ecomdash customer using the information you passed in the header value "ecd-subscription-key" or if the "ecd-subscription-key" header is missing.
{
"Message": "The provided 'ecd-subscription-key' / 'application-id' combination is not valid or does not belong to a company with a current ecomdash subscription."
}
Response 500
If you receive a 500 code response, something went wrong on ecomdash's side while trying to process your request.
{
"Message": "Oops, something went wrong while processing your request"
}
Code samples
@ECHO OFF
curl -v -X POST "https://ecomdash.azure-api.net/api/orders"
-H "ecd-subscription-key: "
-H "Content-Type: application/json"
-H "Ocp-Apim-Subscription-Key: {subscription key}"
--data-ascii "{body}"
using System;
using System.Net.Http.Headers;
using System.Text;
using System.Net.Http;
using System.Web;
namespace CSHttpClientSample
{
static class Program
{
static void Main()
{
MakeRequest();
Console.WriteLine("Hit ENTER to exit...");
Console.ReadLine();
}
static async void MakeRequest()
{
var client = new HttpClient();
var queryString = HttpUtility.ParseQueryString(string.Empty);
// Request headers
client.DefaultRequestHeaders.Add("ecd-subscription-key", "");
client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "{subscription key}");
var uri = "https://ecomdash.azure-api.net/api/orders?" + queryString;
HttpResponseMessage response;
// Request body
byte[] byteData = Encoding.UTF8.GetBytes("{body}");
using (var content = new ByteArrayContent(byteData))
{
content.Headers.ContentType = new MediaTypeHeaderValue("< your content type, i.e. application/json >");
response = await client.PostAsync(uri, content);
}
}
}
}
// // This sample uses the Apache HTTP client from HTTP Components (http://hc.apache.org/httpcomponents-client-ga/)
import java.net.URI;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
public class JavaSample
{
public static void main(String[] args)
{
HttpClient httpclient = HttpClients.createDefault();
try
{
URIBuilder builder = new URIBuilder("https://ecomdash.azure-api.net/api/orders");
URI uri = builder.build();
HttpPost request = new HttpPost(uri);
request.setHeader("ecd-subscription-key", "");
request.setHeader("Content-Type", "application/json");
request.setHeader("Ocp-Apim-Subscription-Key", "{subscription key}");
// Request body
StringEntity reqEntity = new StringEntity("{body}");
request.setEntity(reqEntity);
HttpResponse response = httpclient.execute(request);
HttpEntity entity = response.getEntity();
if (entity != null)
{
System.out.println(EntityUtils.toString(entity));
}
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
}
<!DOCTYPE html>
<html>
<head>
<title>JSSample</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript">
$(function() {
var params = {
// Request parameters
};
$.ajax({
url: "https://ecomdash.azure-api.net/api/orders?" + $.param(params),
beforeSend: function(xhrObj){
// Request headers
xhrObj.setRequestHeader("ecd-subscription-key","");
xhrObj.setRequestHeader("Content-Type","application/json");
xhrObj.setRequestHeader("Ocp-Apim-Subscription-Key","{subscription key}");
},
type: "POST",
// Request body
data: "{body}",
})
.done(function(data) {
alert("success");
})
.fail(function() {
alert("error");
});
});
</script>
</body>
</html>
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSString* path = @"https://ecomdash.azure-api.net/api/orders";
NSArray* array = @[
// Request parameters
@"entities=true",
];
NSString* string = [array componentsJoinedByString:@"&"];
path = [path stringByAppendingFormat:@"?%@", string];
NSLog(@"%@", path);
NSMutableURLRequest* _request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:path]];
[_request setHTTPMethod:@"POST"];
// Request headers
[_request setValue:@"" forHTTPHeaderField:@"ecd-subscription-key"];
[_request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[_request setValue:@"{subscription key}" forHTTPHeaderField:@"Ocp-Apim-Subscription-Key"];
// Request body
[_request setHTTPBody:[@"{body}" dataUsingEncoding:NSUTF8StringEncoding]];
NSURLResponse *response = nil;
NSError *error = nil;
NSData* _connectionData = [NSURLConnection sendSynchronousRequest:_request returningResponse:&response error:&error];
if (nil != error)
{
NSLog(@"Error: %@", error);
}
else
{
NSError* error = nil;
NSMutableDictionary* json = nil;
NSString* dataString = [[NSString alloc] initWithData:_connectionData encoding:NSUTF8StringEncoding];
NSLog(@"%@", dataString);
if (nil != _connectionData)
{
json = [NSJSONSerialization JSONObjectWithData:_connectionData options:NSJSONReadingMutableContainers error:&error];
}
if (error || !json)
{
NSLog(@"Could not parse loaded json with error:%@", error);
}
NSLog(@"%@", json);
_connectionData = nil;
}
[pool drain];
return 0;
}
<?php
// This sample uses the Apache HTTP client from HTTP Components (http://hc.apache.org/httpcomponents-client-ga/)
require_once 'HTTP/Request2.php';
$request = new Http_Request2('https://ecomdash.azure-api.net/api/orders');
$url = $request->getUrl();
$headers = array(
// Request headers
'ecd-subscription-key' => '',
'Content-Type' => 'application/json',
'Ocp-Apim-Subscription-Key' => '{subscription key}',
);
$request->setHeader($headers);
$parameters = array(
// Request parameters
);
$url->setQueryVariables($parameters);
$request->setMethod(HTTP_Request2::METHOD_POST);
// Request body
$request->setBody("{body}");
try
{
$response = $request->send();
echo $response->getBody();
}
catch (HttpException $ex)
{
echo $ex;
}
?>
########### Python 2.7 #############
import httplib, urllib, base64
headers = {
# Request headers
'ecd-subscription-key': '',
'Content-Type': 'application/json',
'Ocp-Apim-Subscription-Key': '{subscription key}',
}
params = urllib.urlencode({
})
try:
conn = httplib.HTTPSConnection('ecomdash.azure-api.net')
conn.request("POST", "/api/orders?%s" % params, "{body}", headers)
response = conn.getresponse()
data = response.read()
print(data)
conn.close()
except Exception as e:
print("[Errno {0}] {1}".format(e.errno, e.strerror))
####################################
########### Python 3.2 #############
import http.client, urllib.request, urllib.parse, urllib.error, base64
headers = {
# Request headers
'ecd-subscription-key': '',
'Content-Type': 'application/json',
'Ocp-Apim-Subscription-Key': '{subscription key}',
}
params = urllib.parse.urlencode({
})
try:
conn = http.client.HTTPSConnection('ecomdash.azure-api.net')
conn.request("POST", "/api/orders?%s" % params, "{body}", headers)
response = conn.getresponse()
data = response.read()
print(data)
conn.close()
except Exception as e:
print("[Errno {0}] {1}".format(e.errno, e.strerror))
####################################
require 'net/http'
uri = URI('https://ecomdash.azure-api.net/api/orders')
request = Net::HTTP::Post.new(uri.request_uri)
# Request headers
request['ecd-subscription-key'] = ''
# Request headers
request['Content-Type'] = 'application/json'
# Request headers
request['Ocp-Apim-Subscription-Key'] = '{subscription key}'
# Request body
request.body = "{body}"
response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
http.request(request)
end
puts response.body