Certifyos CAQH Credentialing Snapshots API

Read the CAQH credentialing profile CertifyOS holds for providers in your tenant

Operations 1

GET /caqh/credentialing-snapshots Get a CAQH credentialing profile by CAQH provider ID or practitioner NPI #

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/certifyos:certifyos-caqh-credentialing-snapshots-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

certifyos-caqh-credentialing-snapshots-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: API for Certify application
  title: Certify API Layer CAQH Credentialing Snapshots API
  version: 1.0.0
servers:
- url: http://localhost:9000
  description: Local Development Server
- url: https://api-service.staging.certifyos.com
  description: Staging Server
- url: https://api-service.internal.certifyos.com
  description: Internal Server
- url: https://api-service.test.certifyos.com
  description: Test Server
- url: https://api-service.demo.certifyos.com
  description: Demo Server
- url: https://api-service.certifyos.com
  description: Production Server
tags:
- name: CAQH Credentialing Snapshots
  description: Read the CAQH credentialing profile CertifyOS holds for providers in your tenant
paths:
  /caqh/credentialing-snapshots:
    get:
      summary: Get a CAQH credentialing profile by CAQH provider ID or practitioner NPI
      description: 'Returns the newest CAQH credentialing profile CertifyOS has stored for a provider in your tenant (the `tenant-id` header). Your tenant must be enabled for this API; otherwise the response is 403. Send exactly one of `caqhProviderId` (the CAQH provider ID) or `npi` (the practitioner NPI).


        This endpoint only reads data CertifyOS already holds. It never calls CAQH, never adds a provider to the CAQH roster and never refreshes the profile; `attestationDate` and `retrievedAt` say how current it is (`retrievedAt` is null for profiles stored before it was recorded). When several signed versions are stored, the one with the most recent attestation date is returned. If the provider is not currently on your tenant''s roster, or nothing is stored for them, the response is 404 `DATA_UNAVAILABLE`.


        `data` is the CAQH profile exactly as CAQH sent it: field names are unchanged and every value is a string (flags are "0"/"1"). SSN is masked unless you send `X-PII-View: true` and hold practitioner PII read permission. CAQH credentialing data does not include a separate personal email, the practice setting, or the full text of disclosure questions.'
      operationId: getCaqhCredentialingSnapshot
      tags:
      - CAQH Credentialing Snapshots
      parameters:
      - description: CAQH provider ID. Send this or npi, not both.
        example: '14466497'
        name: caqhProviderId
        in: query
        schema:
          type: string
      - description: Practitioner NPI. Send this or caqhProviderId, not both.
        example: '1234567893'
        name: npi
        in: query
        schema:
          type: string
      - description: Send true to receive the SSN unmasked; requires practitioner PII read permission
        name: X-PII-View
        in: header
        schema:
          type: string
      - name: tenant-id
        in: header
        schema:
          type: string
        required: true
      responses:
        '200':
          description: The newest stored profile
          content:
            application/json:
              examples:
                snapshot:
                  value:
                    caqhProviderId: string
                    npi: string
                    attestationDate: '2026-07-10'
                    retrievedAt: '2026-09-15T10:00:00.000Z'
                    data:
                      ProviderID: string
                      AttestDate: '2026-07-10T14:30:25'
                      ID: string
                      LastName: string
                      FirstName: string
                      PrimaryPracticeState: string
                      OtherPracticeState: string
                      OtherNameFlag: string (0 or 1)
                      BirthDate: '1980-01-01T00:00:00'
                      SSN: string
                      NID: string
                      DEAFlag: string (0 or 1)
                      CDSFlag: string (0 or 1)
                      UPINFlag: string (0 or 1)
                      NPIFlag: string (0 or 1)
                      NPI: string
                      MedicareProviderFlag: string (0 or 1)
                      MedicaidProviderFlag: string (0 or 1)
                      FellowshipTrainingFlag: string (0 or 1)
                      SecondarySpecialtyFlag: string (0 or 1)
                      HospitalPrivilegeFlag: string (0 or 1)
                      WorkHistoryGapFlag: string (0 or 1)
                      ActiveMilitaryFlag: string (0 or 1)
                      CitizenshipStatus: string
                      ECFMGFlag: string (0 or 1)
                      HospitalBasedFlag: string (0 or 1)
                      EmailAddress: string
                      BirthCity: string
                      EthnicityDescription: string
                      AffiliatedFlag: string (0 or 1)
                      DelegatedFlag: string (0 or 1)
                      NIDCountry:
                        CountryName: string
                      ProviderType:
                        ProviderTypeAbbreviation: string
                      Gender:
                        GenderDescription: string
                      Race_Ethnicity:
                      - ID: string
                        Race_Ethnicity_Level_1:
                          _: string
                          Race_Ethnicity_Level_2:
                            _: string
                            Race_Ethnicity_Level_3:
                            - string
                      ProviderLicense:
                      - ID: string
                        LicenseNumber: string
                        State: string
                        CurrentlyPracticingFlag: string (0 or 1)
                        ExpirationDate: '2020-07-29T04:00:00'
                      ProviderDEA:
                        ID: string
                        IDoNotPrescribe: string
                        ReasonForNotHavingDEA: string
                      ProviderMedicare:
                        ID: string
                        MedicareNumber: string
                      ProviderMedicaid:
                        ID: string
                        MedicaidNumber: string
                        State: string
                      Education:
                      - ID: string
                        InstitutionName: string
                        Address: string
                        City: string
                        State: string
                        PostalCode: string
                        StartDate: '2022-02-01T00:00:00'
                        EndDate: '2022-04-01T00:00:00'
                        HospitalDepartmentName: string
                        ProgramCompletedFlag: string (0 or 1)
                        PhoneNumber: string
                        DisciplinaryActionFlag: string (0 or 1)
                        EducationTypeName: string
                        County:
                          CountyName: string
                        Country:
                          CountryName: string
                        InstitutionType:
                          InstitutionTypeDescription: string
                      Degree:
                        ID: string
                        Degree:
                          DegreeAbbreviation: string
                      Specialty:
                      - ID: string
                        SpecialtyType:
                          SpecialtyTypeDescription: string
                      Associate:
                        ID: string
                        AssociateFirstName: string
                        AssociateLastName: string
                        PhoneNumber: string
                        AssociateType:
                          AssociateTypeDescription: string
                          IsPrimaryCredentialingContact: string
                      Practice:
                      - ID: string
                        PracticeLocationId: string
                        PracticeName: string
                        Address: string
                        City: string
                        State: string
                        Zip: string
                        ExtZip: string
                        CurrentlyPracticingFlag: string (0 or 1)
                        AffliationDescription: string
                        IsOfficeManagerCredentialingContact: string
                        IsOfficeManagerBillingContact: string
                        Tax:
                          ID: string
                          TaxID: string
                          TaxType:
                            TaxTypeDescription: string
                        PracticeAddress:
                          ID: string
                          Address: string
                          City: string
                          State: string
                          PostalCode: string
                          Country:
                            CountryName: string
                      Hospital:
                      - ID: string
                        HospitalName: string
                        NonAHAHospitalName: string
                        Address: string
                        City: string
                        State: string
                        ZipCode: string
                        PhoneNumber: string
                        UnrestrictedPrivilegesFlag: string (0 or 1)
                        PrivilegeDescription: string
                        TemporaryPrivilegesFlag: string (0 or 1)
                        StaffCategory: string
                        HospitalRecordType: string
                        HospitalAffiliationType:
                          HospitalAffiliationTypeDescription: string
                        Country:
                          CountryName: string
                      FTCA:
                        FTCACovered: string
                        FTCACoveredPracticeLocations: string
                      Insurance:
                      - ID: string
                        InsuranceCarrierName: string
                        StartDate: '2021-08-01T00:00:00'
                        EndDate: '2022-03-01T00:00:00'
                        SelfInsuredFlag: string (0 or 1)
                        CoveredPracticeLocations: string
                        Address: string
                        City: string
                        State: string
                        PolicyNumber: string
                        IndividualCoverageFlag: string (0 or 1)
                        CoverageAmountOccurrence: string
                        CoverageAmountAggregate: string
                        InsuranceType:
                          InsuranceTypeDescription: string
                      WorkHistory:
                        ID: string
                        EmployerName: string
                        StartDate: '2022-01-01T00:00:00'
                        Address: string
                        City: string
                        CurrentEmployerFlag: string (0 or 1)
                        StatusDescription: string
                        Country:
                          CountryName: string
                        WorkHistoryType:
                          WorkHistoryTypeDescription: string
                      TimeGap:
                      - ID: string
                        StartDate: '2013-06-01T04:00:00'
                        EndDate: '2015-07-01T04:00:00'
                        GapExplanation: string
                        GapDescription: string
                      Disclosure:
                      - ID: string
                        DisclosureAnswerFlag: string (0 or 1)
                        DisclosureQuestion:
                          DisclosureSummary: string
                      GraduateType:
                        GraduateTypeDescription: string
                      ProviderAddress:
                      - ID: string
                        Address: string
                        Address2: string
                        City: string
                        State: string
                        FaxNumber: string
                        EmailAddress: string
                        AddressType:
                          AddressTypeDescription: string
                        Country:
                          CountryName: string
                      ProviderCertification:
                      - ID: string
                        CertificationFlag: string (0 or 1)
                        CertificationDescription: string
                      CitizenshipCountry:
                        CountryName: string
                      Military:
                        ID: string
                        LastLocation: string
                        Branch: string
                        StartDate: '2016-01-01T05:00:00'
                        EndDate: '2016-06-01T04:00:00'
                        ReserveGuardFlag: string (0 or 1)
                        ActiveDuty: string
              schema:
                $ref: '#/components/schemas/CaqhCredentialingSnapshotResponse'
        '400':
          description: 'INVALID_REQUEST: send exactly one of caqhProviderId (1 to 20 digits) or npi (a valid 10-digit NPI)'
          content:
            application/json:
              examples:
                invalidRequest:
                  value:
                    errors:
                    - httpStatus: 400
                      reason: INVALID_REQUEST
                      title: Invalid request
                      detail: Send exactly one of caqhProviderId or npi.
              schema:
                $ref: '#/components/schemas/ApiError'
        '401':
          description: Unauthorized - Authentication required
          content:
            application/json: {}
        '403':
          description: Forbidden - the API is not enabled for the tenant (caqh configuration caqhCredentialingSnapshotApiEnabled), no practitioner read permission for the tenant, or X-PII-View without practitioner PII read permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '404':
          description: 'DATA_UNAVAILABLE: the provider is not on the tenant''s roster, or no CAQH credentialing data is stored for them'
          content:
            application/json:
              examples:
                dataUnavailable:
                  value:
                    errors:
                    - httpStatus: 404
                      reason: DATA_UNAVAILABLE
                      title: Data unavailable
                      detail: No CAQH credentialing data is available for this provider.
              schema:
                $ref: '#/components/schemas/ApiError'
        '500':
          description: 'INTERNAL_ERROR: unexpected failure, including when the tenant''s configuration cannot be read'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
      security:
      - jwt: []
components:
  schemas:
    ApiError:
      type: object
      description: Standard API error response containing a list of error objects
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ErrorObject'
          description: List of error objects describing validation or processing failures
    ErrorObject:
      type: object
      description: Individual error object containing details about a specific validation or processing error
      properties:
        httpStatus:
          type: integer
          format: int32
          examples:
          - 400
          description: HTTP status code for this error
        reason:
          type: string
          examples:
          - VALIDATION_ERROR
          description: Error reason/code
        title:
          type: string
          examples:
          - 'Validation failed for field: eventTypes'
          description: Error title/summary
        detail:
          type: string
          examples:
          - eventTypes is required and cannot be empty or null
          description: Detailed error message
        rejectedValue:
          type: string
          description: The value that was rejected, omitted for sensitive fields such as SSN
    CaqhCredentialingSnapshotResponse:
      type: object
      description: The newest stored CAQH credentialing profile for a provider
      properties:
        caqhProviderId:
          type: string
          description: CAQH provider id
        npi:
          type: string
          description: Practitioner NPI, when stored
        attestationDate:
          type: string
          examples:
          - '2026-07-10'
          description: Date the provider attested this version of the profile (YYYY-MM-DD)
        retrievedAt:
          type: string
          examples:
          - '2026-09-15T10:00:00.000Z'
          description: When CertifyOS retrieved this profile from CAQH (ISO-8601, UTC). Null for profiles stored before the retrieval time was recorded.
        data:
          type: object
          description: The CAQH profile exactly as received from CAQH, field names unchanged. Every value is a string. SSN is masked unless PII view is granted.
  securitySchemes:
    jwt:
      type: http
      description: JWT Authentication - Provide only the raw token without Bearer prefix
      scheme: bearer
      bearerFormat: JWT
x-provenance:
  method: harvested
  publisher: Certifyos
  source: https://api-service.internal.certifyos.com/openapi.json
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)