Instacart · Schema

Instacart Order

Represents an order in the Instacart Connect system, covering delivery, pickup, and last mile fulfillment types with their associated items, service options, and status lifecycle.

GroceryE-CommerceMarketplaceRetailLogisticsLast Mile DeliveryFulfillmentCatalogAdvertisingAgentsMCP

Properties

Name Type Description
id string The unique identifier for the order.
user_id string The retailer's unique identifier for the customer who placed the order.
status string The current status of the order in the fulfillment lifecycle.
fulfillment_type string The type of fulfillment for this order.
created_at string The timestamp when the order was created.
estimated_delivery_at string The estimated delivery or pickup time.
store object
service_option object
delivery_address object
delivery_instructions string Special instructions for the delivery driver or pickup process.
items array The items included in the order.
shopper object
View JSON Schema on GitHub

JSON Schema

instacart-order-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://instacart.com/schemas/instacart/order.json",
  "title": "Instacart Order",
  "description": "Represents an order in the Instacart Connect system, covering delivery, pickup, and last mile fulfillment types with their associated items, service options, and status lifecycle.",
  "type": "object",
  "required": ["id", "status", "fulfillment_type"],
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique identifier for the order."
    },
    "user_id": {
      "type": "string",
      "description": "The retailer's unique identifier for the customer who placed the order."
    },
    "status": {
      "type": "string",
      "enum": [
        "brand_new",
        "acknowledged",
        "picking",
        "staging",
        "delivering",
        "delivered",
        "canceled",
        "rescheduled"
      ],
      "description": "The current status of the order in the fulfillment lifecycle."
    },
    "fulfillment_type": {
      "type": "string",
      "enum": ["delivery", "pickup", "last_mile"],
      "description": "The type of fulfillment for this order."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "The timestamp when the order was created."
    },
    "estimated_delivery_at": {
      "type": "string",
      "format": "date-time",
      "description": "The estimated delivery or pickup time."
    },
    "store": {
      "$ref": "#/$defs/Store"
    },
    "service_option": {
      "$ref": "#/$defs/ServiceOption"
    },
    "delivery_address": {
      "$ref": "#/$defs/Address"
    },
    "delivery_instructions": {
      "type": "string",
      "description": "Special instructions for the delivery driver or pickup process."
    },
    "items": {
      "type": "array",
      "description": "The items included in the order.",
      "items": {
        "$ref": "#/$defs/OrderItem"
      }
    },
    "shopper": {
      "$ref": "#/$defs/Shopper"
    }
  },
  "$defs": {
    "Store": {
      "type": "object",
      "description": "A retail store on the Instacart platform.",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier for the store."
        },
        "name": {
          "type": "string",
          "description": "The name of the store."
        },
        "address": {
          "$ref": "#/$defs/Address"
        }
      }
    },
    "ServiceOption": {
      "type": "object",
      "description": "A fulfillment time slot selected for the order.",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier for the service option."
        },
        "date": {
          "type": "string",
          "format": "date",
          "description": "The date of the service option."
        },
        "window_starts_at": {
          "type": "string",
          "format": "date-time",
          "description": "The start time of the fulfillment window."
        },
        "window_ends_at": {
          "type": "string",
          "format": "date-time",
          "description": "The end time of the fulfillment window."
        },
        "fulfillment_type": {
          "type": "string",
          "enum": ["delivery", "pickup", "last_mile"],
          "description": "The fulfillment type for this service option."
        }
      }
    },
    "Address": {
      "type": "object",
      "description": "A physical address.",
      "properties": {
        "address_line_1": {
          "type": "string",
          "description": "The street address."
        },
        "address_line_2": {
          "type": "string",
          "description": "Additional address information such as apartment or suite number."
        },
        "city": {
          "type": "string",
          "description": "The city."
        },
        "state": {
          "type": "string",
          "description": "The state or province."
        },
        "postal_code": {
          "type": "string",
          "description": "The postal or ZIP code."
        },
        "latitude": {
          "type": "number",
          "description": "The latitude coordinate."
        },
        "longitude": {
          "type": "number",
          "description": "The longitude coordinate."
        }
      }
    },
    "OrderItem": {
      "type": "object",
      "description": "An item within an order.",
      "required": ["product_id"],
      "properties": {
        "product_id": {
          "type": "string",
          "description": "The Instacart product identifier."
        },
        "upc": {
          "type": "string",
          "description": "The Universal Product Code."
        },
        "name": {
          "type": "string",
          "description": "The display name of the product."
        },
        "quantity": {
          "type": "integer",
          "description": "The ordered quantity.",
          "minimum": 1
        },
        "status": {
          "type": "string",
          "enum": ["pending", "found", "replaced", "refunded", "not_found"],
          "description": "The current status of the item during fulfillment."
        },
        "replacement": {
          "$ref": "#/$defs/Replacement"
        },
        "replacement_status": {
          "type": "string",
          "enum": ["PENDING", "APPROVED", "REJECTED"],
          "description": "The customer's decision on a suggested replacement."
        },
        "refunded": {
          "type": "boolean",
          "description": "Whether this item has been refunded."
        }
      }
    },
    "Replacement": {
      "type": "object",
      "description": "A replacement product suggested by the shopper.",
      "properties": {
        "product_id": {
          "type": "string",
          "description": "The product identifier of the replacement."
        },
        "name": {
          "type": "string",
          "description": "The name of the replacement product."
        },
        "quantity": {
          "type": "integer",
          "description": "The quantity of the replacement.",
          "minimum": 1
        }
      }
    },
    "Shopper": {
      "type": "object",
      "description": "The Instacart shopper assigned to fulfill the order.",
      "properties": {
        "name": {
          "type": "string",
          "description": "The first name of the shopper."
        },
        "phone_number": {
          "type": "string",
          "description": "A masked phone number for contacting the shopper."
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/instacart-order"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.