Flexible Shipping offers a simple JSON API which you or your theme developer can use to fetch estimated shipping rates for a specific product or products. This is different to the shipping_rates.json JSON API which is built-in to Shopify, as it allows you to fetch rates for a specific product or combination of products with requiring the user to add them to their cart.

To fetch shipping estimates, you can make a POST request to http://yourstore.com/apps/flexiship/ajax.json with the following format for the request body:

  "origin": {
    "country": "US",
    "state": "CA",
    "city": "Beverly Hills",
    "zip": "90210"
  "destination": {
    "country": "US",
    "state": "NY",
    "city": "New York",
    "zip": "10044"
  "items": [    
      "name": "Hoodie",
      "sku": "HD-001",
      "quantity": 100,
      "grams": 10,
      "price": 1000,
      "product_id": "172050369",
      "variant_id": "3157633284"
  "currency": "USD"

Note that it's only possible to fetch shipping rates generated by the Flexible Shipping app via this API. We're unable to return shipping rates generated by other third party carrier integrations or Shopify itself at this time.