Forum Discussion

API_User's avatar
API_User
Equinix Employee
6 years ago

Issue with Shipments API

I'm currently getting a 400 response without any sort of indication of what the problem may be. Here is an example request that I am sending with some information redacted:

{
    "ibxLocation": {
        "cages": [
            {
                "cage": "AM2:1234",
                "accountNumber": "1234"
            }
        ],
        "ibx": "AM2"
    },
    "customerReferenceNumber": null,
    "serviceDetails": {
        "estimatedDateTime": "2019-07-27T00:00:00+00:00",
        "shipmentDetails": {
            "noOfBoxes": 3,
            "trackingNumber": [
                "123123123"
            ],
            "inboundType": "CARRIER",
            "description": null,
            "carrierName": "UPS"
        }
    },
    "contacts": [
        {
            "contactType": "NOTIFICATION",
            "userName": "test@test.com",
            "name": "First Last"
        },
        {
            "contactType": "ORDERING",
            "userName": "test@test.com",
            "name": "First Last"
        }
    ]
}


Please let me know if you need any information so that we can resolve this issue.

  • API_User's avatar
    API_User
    Equinix Employee
    Hi Dustin,

    Thanks for reaching us out for the issue you are facing. We have examined your shared request packet. Everything looks good except for the value being passed for “estimatedDateTime”. The “estimatedDateTime” should be a future date and the value should be provided in ISO date format ex: 2019-10-30T00:00:00Z Please update the value of “estimatedDateTime” as per this format and you should be able to place the order successfully.

    Additionally, as shared earlier, please use “/v1/orders/shipment/locations?detail=true” API to retrieve details of IBX/Cage/Cabinet/AccountNumber to which your integration user has access to. Please use the same to construct “ibxLocation” in Shipment request. I believe while sharing the request you have replaced the actual values with sample values.

    Thanks,
    Equinix Team
  • API_User's avatar
    API_User
    Equinix Employee

    Hello,

    Thanks for getting back to me but this is still not working.

    I believe that there is probably something broken on your side. Usually, you return a message describing the issue when a 400 is encountered. For example, here is an error message that I encountered with the work visit API:

    {
        "errors": [
            {
                "code": "EQX-161-403",
                "message": "Contacts (with userName) should be Active and Approved"
            }
        ],
        "ticketId": "190820182614628"
    }


    My issue is that the response body for these 400s is completely empty so I have to guess at what is wrong with the request.

  • API_User's avatar
    API_User
    Equinix Employee
    Hi Dustin,

    Thanks for the feedback. We are working to make our error messages self-explanatory and cover all the error scenarios. For the issue you are facing, I have once again reviewed your last shared request and everything looks correct except for the date format sent for “estimatedDateTime”. Are you still facing the issue after updating the date format to the ISO format - 2019-10-30T00:00:00Z? I have mailed you a sample request. Please refer the same and update your request packet accordingly.

    Thanks,
    Equinix Team
  • API_User's avatar
    API_User
    Equinix Employee
    Yep, still hit the same issue. Would it be possible to reach out to me via email and I can provide you a full un-redacted request for testing?
  • API_User's avatar
    API_User
    Equinix Employee
    Hi Dustin,

    I have sent an email to your email id. Please send your request packet for us to analyze and share our recommendations.

    Thanks,
    Equinix Team