MedReveal Npi API

🏥 NPI lookup and search endpoints

Operations 3

GET /api/v1/npis/{npi} Get Npi #
POST /api/v1/npis Batch Lookup Npis #
POST /api/v1/npiSearch Search Npi Endpoint #

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/med-reveal-com:med-reveal-com-npi-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

med-reveal-com-npi-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: MedReveal Npi API
  description: '## Healthcare Price Transparency API


    MedReveal API provides access to healthcare provider rate data, enabling you to build powerful analytics and price transparency tools.


    ### 🔐 Authentication


    Protected endpoints require an API key. Include your key in the request header:


    ```

    X-API-Key: your_api_key_here

    ```


    ### ⚡ Rate Limits


    | Tier | Daily Limit | Rate Limit |

    |------|-------------|------------|

    | BASE | 100 requests/day | 10 requests/minute |

    | PREMIUM | 10,000 requests/day | 100 requests/minute |


    ### 📚 Core Endpoints


    | Endpoint | Description |

    |----------|-------------|

    | `/api/v1/npis/{npi}` | Lookup provider by NPI |

    | `/api/v1/tins/{tin}` | Lookup provider group by TIN |

    | `/api/v1/market/benchmarking` | Get market benchmark statistics |

    | `/api/v1/provider/searchrates` | Search provider-specific rates |

    | `/api/v1/taxonomy/{code}` | Lookup taxonomy code details |


    ### 🌐 Website


    med-reveal.com | Developer Docs'
  version: 1.0.0
tags:
- name: npi-api
  description: 🏥 NPI lookup and search endpoints
paths:
  /api/v1/npis/{npi}:
    get:
      tags:
      - npi-api
      summary: Get Npi
      description: 'Get detailed information for a single NPI.


        **Parameters:**

        - npi: The 10-digit National Provider Identifier


        **Returns:**

        Provider details with fields: npi, name, state, city, zipcode, primaryTaxonomyCode, tinValue, entityTypeCode'
      operationId: get_npi_api_v1_npis__npi__get
      parameters:
      - name: npi
        in: path
        required: true
        schema:
          type: string
          title: Npi
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NpiResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/npis:
    post:
      tags:
      - npi-api
      summary: Batch Lookup Npis
      description: 'Batch lookup multiple NPIs.


        **Rate Limits:**

        - Maximum 10 NPIs per request (all roles)


        **Request Body:**

        - npis: Array of NPI numbers to look up (max 10)


        **Returns:**

        List of found NPIs with: npi, name, state, city, zipcode, primaryTaxonomyCode, tinValue, entityTypeCode'
      operationId: batch_lookup_npis_api_v1_npis_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NpiLookupRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NpiBatchResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/npiSearch:
    post:
      tags:
      - npi-api
      summary: Search Npi Endpoint
      description: 'Search for NPIs by various criteria.


        **Rate Limits:**

        - BASE: Maximum 50 results per page

        - PREMIUM: Maximum 500 results per page


        **Search Parameters (all optional):**

        - name: Provider name (partial match)

        - city: City name

        - state: Two-letter state code

        - specialty: Specialty classification

        - taxonomy: Taxonomy code

        - entityType: 1 (Individual) or 2 (Organization)


        **Pagination:**

        - page: Page number (starting from 1)

        - pageSize: Results per page'
      operationId: search_npi_endpoint_api_v1_npiSearch_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NpiSearchRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NpiSearchResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    NpiResponse:
      properties:
        success:
          type: boolean
          title: Success
        data:
          anyOf:
          - $ref: '#/components/schemas/NpiDetails'
          - type: 'null'
        meta:
          $ref: '#/components/schemas/ResponseMeta'
        error:
          anyOf:
          - type: string
          - type: 'null'
          title: Error
        message:
          anyOf:
          - type: string
          - type: 'null'
          title: Message
      type: object
      required:
      - success
      - meta
      title: NpiResponse
      description: Single NPI lookup response.
    NpiLookupRequest:
      properties:
        npis:
          items:
            type: string
          type: array
          minItems: 1
          title: Npis
          description: List of NPI numbers to look up (max 10 per request)
      type: object
      required:
      - npis
      title: NpiLookupRequest
      description: Request for batch NPI lookup.
    NpiSearchRequest:
      properties:
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
          description: Provider name (partial match)
        city:
          anyOf:
          - type: string
          - type: 'null'
          title: City
          description: City name
        state:
          anyOf:
          - type: string
          - type: 'null'
          title: State
          description: Two-letter state code
        specialty:
          anyOf:
          - type: string
          - type: 'null'
          title: Specialty
          description: Specialty classification
        taxonomy:
          anyOf:
          - type: string
          - type: 'null'
          title: Taxonomy
          description: Taxonomy code
        entityType:
          anyOf:
          - type: integer
          - type: 'null'
          title: Entitytype
          description: Entity type (1=Individual, 2=Organization)
        page:
          type: integer
          minimum: 1.0
          title: Page
          description: Page number
          default: 1
        pageSize:
          type: integer
          maximum: 500.0
          minimum: 1.0
          title: Pagesize
          description: Results per page
          default: 50
      type: object
      title: NpiSearchRequest
      description: Request for NPI search.
    ResponseMeta:
      properties:
        requestId:
          type: string
          title: Requestid
        timestamp:
          type: string
          title: Timestamp
        role:
          anyOf:
          - type: string
          - type: 'null'
          title: Role
        dailyLimit:
          anyOf:
          - type: integer
          - type: 'null'
          title: Dailylimit
        remainingToday:
          anyOf:
          - type: integer
          - type: 'null'
          title: Remainingtoday
        processingTime:
          anyOf:
          - type: string
          - type: 'null'
          title: Processingtime
      type: object
      required:
      - requestId
      - timestamp
      title: ResponseMeta
      description: Standard response metadata.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    NpiSearchResponse:
      properties:
        success:
          type: boolean
          title: Success
        data:
          items:
            $ref: '#/components/schemas/NpiDetails'
          type: array
          title: Data
        meta:
          $ref: '#/components/schemas/ResponseMeta'
        pagination:
          $ref: '#/components/schemas/PaginationInfo'
      type: object
      required:
      - success
      - data
      - meta
      - pagination
      title: NpiSearchResponse
      description: NPI search response.
    NpiBatchResponse:
      properties:
        success:
          type: boolean
          title: Success
        data:
          items:
            $ref: '#/components/schemas/NpiDetails'
          type: array
          title: Data
        meta:
          $ref: '#/components/schemas/ResponseMeta'
        found:
          type: integer
          title: Found
        notFound:
          items:
            type: string
          type: array
          title: Notfound
      type: object
      required:
      - success
      - data
      - meta
      - found
      - notFound
      title: NpiBatchResponse
      description: Batch NPI lookup response.
    NpiDetails:
      properties:
        npi:
          type: string
          title: Npi
        name:
          type: string
          title: Name
          description: Provider name
        state:
          anyOf:
          - type: string
          - type: 'null'
          title: State
        city:
          anyOf:
          - type: string
          - type: 'null'
          title: City
        zipcode:
          anyOf:
          - type: string
          - type: 'null'
          title: Zipcode
          description: ZIP code
        primaryTaxonomyCode:
          anyOf:
          - type: string
          - type: 'null'
          title: Primarytaxonomycode
        tinValue:
          anyOf:
          - type: string
          - type: 'null'
          title: Tinvalue
          description: TIN value
        entityTypeCode:
          anyOf:
          - type: integer
          - type: 'null'
          title: Entitytypecode
          description: Entity type code (1=Individual, 2=Organization)
      type: object
      required:
      - npi
      - name
      title: NpiDetails
      description: Detailed NPI information.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    PaginationInfo:
      properties:
        page:
          type: integer
          title: Page
        pageSize:
          type: integer
          title: Pagesize
        totalResults:
          type: integer
          title: Totalresults
        totalPages:
          type: integer
          title: Totalpages
      type: object
      required:
      - page
      - pageSize
      - totalResults
      - totalPages
      title: PaginationInfo
      description: Pagination information for list responses.