Yelp Fulfillment API

The Fulfillment API API from Yelp — 1 operation(s) for fulfillment api.

Operations 1

POST /checkout_fulfillment/v2/check_availability Check Availability #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/yelp:yelp-fulfillment-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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.

OpenAPI Specification

yelp-fulfillment-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fulfillment API
  version: '1.0'
servers:
- url: https://partner_base_url
security:
- basic: []
tags:
- name: Fulfillment API
paths:
  /checkout_fulfillment/v2/check_availability:
    post:
      tags:
      - Fulfillment API
      summary: Check Availability
      operationId: check_fulfillment_availability
      description: 'Check if the given business can currently fulfill an order.


        This call will be made by Yelp to the Partner when the User is on the biz details page and wants to enter the ordering flow. The information the user enters will be validated and posted to this endpoint.


        If the Partner responds that the service is available within the constraints the User provided, then Yelp will take the user to the iframe flow where they can continue building the Order.


        If the User-supplied address is ambiguous, the Partner should return a list of `address_suggestions` and specify `availability_status` as `not_deliverable_ambiguous_address`.


        **Request**: See Opportunity resource for more info.


        ## Example of using multiple availability constraints:


        In this example a user attempts to reorder order `1BA41E8A0F4234A3B7DF4B232E1E9C87` and have it delivered to `140 New Montgomery St. San Francisco, CA 94105` (two availability constraints: `RepeatOrderConstraint` and `CustomerAddressConstraint`)


        ```json

        {

        "opportunity_token": "",

        "partner_business_id": "partner business id",

        "request_time": "2018-01-27T10:32:50+00:00",

        "service_type": "food",

        "selected_option": "at_customer",

        "availability_constraints": [

        {

        "object": "CustomerAddressConstraint",

        "customer_address_str": "140 New Montgomery St. San Francisco, CA 94105",

        "customer_address": {

        "object": "Address",

        "address1": "140 New Montgomery St",

        "city": "San Francisco",

        "region": "CA",

        "postal_code": "94105",

        "country": "US"

        }

        },

        {

        "object": "RepeatOrderConstraint",

        "reorder_yelp_order_id": "1BA41E8A0F4234A3B7DF4B232E1E9C87"

        }

        ]

        }

        ```


        The recommended precedence order for checking constraints is as follows:


        1. service type

        * `unsupported`

        * `unsupported_by_business`


        2. hours

        * `not_available_outside_of_hours`


        3. address

        * `not_available_outside_of_area`

        * `not_available_invalid_address`

        * `not_available_ambiguous_address`


        4. re-order

        * `not_available_cannot_fulfill_reorder`


        **Note**: `not_available_other` can be used in case an unexpected situation arises.


        If none of the above are encountered then return

        * `available_can_fulfill_reorder` - if a `RepeatOrderConstraint` is specified

        * `available` - if a `RepeatOrderConstraint` is not specified'
      responses:
        '200':
          description: Successfully retrieved the availability status.
          content:
            application/json:
              examples:
                Result:
                  value:
                    availability_status: available
              schema:
                type: object
                properties:
                  availability_status:
                    type: string
        '400':
          description: Bad Request
          content:
            application/json:
              examples:
                Ambiguous Address:
                  value:
                    availability_status: not_available_ambiguous_address
                    address_suggestions:
                    - 1337 Main St, Huntington Beach, Orange County, CA 92648
                    - 1337 Main St, Tustin, Orange County, California 92780
              schema:
                type: object
                properties:
                  availability_status:
                    type: string
                  address_suggestions:
                    type: array
                    items:
                      type: string
components:
  securitySchemes:
    basic:
      type: http
      scheme: basic
x-provenance:
  method: searched
  source: https://docs.developer.yelp.com/reference
  harvested: '2026-11-05'
  tool: harvest-readme-openapi.py
  note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
  assembled_from:
  - https://docs.developer.yelp.com/reference/check_fulfillment_availability.md
  merge:
    pages: 1
    deduped: 0
    conflicts_kept_first: 0