---
title: "Submit NPI overlaps"
method: PUT
path: "/v1/schedulable_entities/overlaps"
tags: ["schedulable-entities"]
---

# Submit NPI overlaps

`PUT /v1/schedulable_entities/overlaps`

## Request

- Base URL: `https://api-developer-sandbox.zocdoc.com`
- URL: `https://api-developer-sandbox.zocdoc.com/v1/schedulable_entities/overlaps`
- Auth: one of:
  - OAuth 2
    - Client credentials
    - Token URL: `https://auth.zocdoc.com/oauth/token` scopes: `external.schedulable_entity.read`
  - OAuth 2
    - Authorization code: `https://auth.zocdoc.com/authorize`
    - Token URL: `https://auth.zocdoc.com/oauth/token` scopes: `external.schedulable_entity.read`

Submit NPI overlaps to compare your provider directory with providers
bookable on Zocdoc. Send real-time distribution status
(`developer_app_state`), unverified addresses and other data required
for joint provider operations.

## Request body

- SchedulableEntitiesOverlapsRequestBody
  - `overlaps` MatchRequestInput[], required
    - `npi` string, required: National Provider Identifier
    - `entity_id` string: Optional Zocdoc provider location ID (`pr_*|lo_*`) for this NPI, typically as returned in `schedulable_entities[].id`; any active provider location of the NPI is accepted. The value is trimmed and matched case-sensitively; an empty or whitespace-only value is rejected. Omit it for an item that applies to the NPI as a whole. When set, the request's `developer_app_state` is stored for this provider location.
    - `metadata` MatchRequestMetadataItem[]
      - `name` string
      - `value` string
  - `developer_app_state` 'disabled' | 'enabled', required: Indicates whether each provider in the request is currently active in your application and able to receive bookings. Send `enabled` when the provider is live and bookable in your app, or `disabled` when the provider is suppressed or not currently available for booking. This value applies to every item in `overlaps`. For an item with `entity_id`, it is stored for that provider location. Submit separate requests when providers or locations have different states.

## Response `200`

OK

- SchedulableEntitiesOverlapsResponseBody
  - `request_id` string, required: Unique request identifier for tracing
  - `data` MatchRequestResponseItem[], required
    - `npi` string, required: National Provider Identifier
    - `schedule_state` 'schedulable' | 'not_schedulable' | 'added_to_queue', required
    - `schedulable_entities` OverlapsSchedulableEntityItem[], required
      - `id` string, required: Zocdoc provider location ID (e.g., pr_zzzz|lo_yyyy)
      - `entity_type` 'provider_location', required: Entity type

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden

---

[API](https://skmtc.dev/zocdoc/apis/zocdoc-bundle-api.md) - [All operations](https://skmtc.dev/zocdoc/apis/zocdoc-bundle-api/llms.txt) - [OpenAPI document](https://skmtc.dev/zocdoc/apis/zocdoc-bundle-api/revisions/965a6ca4ed12?raw)
