pVerify Patient Demographic Validator API
Validate and complete patient demographic data (pDV) — name, date of birth, gender and address — so that downstream eligibility and discovery inquiries match on identity.
Validate and complete patient demographic data (pDV) — name, date of birth, gender and address — so that downstream eligibility and discovery inquiries match on identity.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/pverify-patient-demographic-validator-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: pVerify Patient Demographic Validator API
description: Real-time healthcare insurance eligibility and revenue-cycle API. Derived operation-for-operation from the public Postman collection pVerify publishes at https://postman.pverify.com/ (collection 6ceb8797-50ff-42fd-98a3-64beefaa6c94, last updated 03/01/2026). Covers eligibility (270/271), dental eligibility, insurance discovery, MBI lookup, patient demographic validation, claim status (276/277), patient cost estimation, payer lists and the CGX widget.
version: '1.0'
termsOfService: https://pverify.com/privacy-policy/
contact:
name: pVerify Support
email: support@pverify.com
url: https://pverify.com/contact-support/
servers:
- url: https://api.pverify.com
description: Production
- url: https://testapi.pverify.com
description: Test environment published by pVerify
tags:
- name: Patient Demographic Validator
paths:
/api/PatientFinderInquiry:
post:
operationId: patientFinderInquiry
tags:
- Patient Demographic Validator
summary: PatientFinderInquiry
description: 'Environment |
URL |
Test |
https://testapi.pverify.com/API/PatientFinderInquiry |
Production |
https://api.pverify.com/API/PatientFinderInquiry |
Description:Returns only the top matching patient based on provided demographic information.'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
FirstName:
type: string
example: firstname
MiddleName: {}
LastName:
type: string
example: lastname
DOB: {}
SSN: {}
PhoneNumber: {}
Address:
type: object
properties:
AddressLine1:
type: string
example: Address1
AddressLine2: {}
City:
type: string
example: City
State:
type: string
example: ST
ZipCode:
type: string
example: '12345'
Location:
type: string
example: Somewhere
ReferenceNumber: {}
example:
FirstName: firstname
MiddleName: null
LastName: lastname
DOB: null
SSN: null
PhoneNumber: null
Address:
AddressLine1: Address1
AddressLine2: null
City: City
State: ST
ZipCode: '12345'
Location: Somewhere
ReferenceNumber: null
responses:
'200':
description: OK
security:
- bearerAuth: []
clientApiId: []
/API/PatientFinderInquiryResults:
post:
operationId: patientFinderInquiryResults
tags:
- Patient Demographic Validator
summary: PatientFinderInquiryResults
description: 'Environment |
URL |
Test |
https://testapi.pverify.com/API/PatientFinderInquiryResults |
Production |
https://api.pverify.com/API/PatientFinderInquiryResults |
Description:Returns all matching patient records based on the search criteria. This endpoint is intended for workflows that require presenting multiple potential matches for verification.
Use Cases:Used in Patient Validator-Verification.
Behavior:Returns all matched patient records that meet the criteria.
Headers
Key |
Value |
URL |
https://api.pverify.com/API/PatientFinderInquiryResults |
Method |
POST |
Headers |
Description |
Authorization |
Authorization token from above preceded by the String "Bearer" |
Client-API-Id |
API ID provided by pVerify |
Content-Type |
application/json |
*Note: The Client-API-Id is required. Header keys are case sensitive.
PatientFinderInquiryResults Request Fields
Property Name |
Data Type |
Usage |
Description |
FirstName |
String |
Optional |
First Name of patient for inquiry |
MiddleName |
String |
Optional |
Middle Name of patient for inquiry |
LastName |
String |
Required |
Last Name of patient required for inquiry |
DOB |
String |
Optional |
(Expected format: MM/dd/YYYY ie 01/01/2000) |
SSN |
String |
Optional |
Social Security Number (Exported format XXX-XX-XXXX) |
Address.AddressLine1 |
String |
Optional |
Address1 |
Address.AddressLine2 |
String |
Optional |
Address2 |
Address.City |
String |
Optional |
City |
Address.State |
String |
Optional |
State |
Address.ZipCode |
String |
Optional |
Zip |
Location |
String |
Required |
Location is the practice location. Note by setting this, you will lock the patient to one location, so that users that login in via our portal who are not authorized to see that location will not see the patient. |
ReferenceNumber |
String |
Optional |
Any free text for patient identifier, ie MRN |
PatientFinderInquiryResults Response Fields
Returns a list of all matched patients. All other response fields are the same as the PatientFinderInquiry endpoint.
Key |
Type |
Description |
RequestID |
Integer |
Eligibility Transaction ID |
APIResponseCode |
String |
0-Processed,1-Rejected,2-NoFunds,3-Pending |
APIResponseMessage |
String |
Message about the transaction |
Error |
String |
Message from Payer about errors |
patientsFound |
Integer |
Number of patients found |
RequestHasSSN |
Boolean |
True if request has SSN |
IsMBIRegistered |
Boolean |
True if the request contains a registered MBI; otherwise, false |
IsTRHasError |
Boolean |
True if there was an error during Thomson Reuters (TR) verification; otherwise, false |
IsShowSSN |
Boolean |
Indicates whether the patient''s SSN should be displayed in the response. True = show SSN, False = mask SSN |
Patients |
Array of Objects |
Returns a list of matched patients based on the request. If only one patient is matched, the array will still contain a single object. (Note: Patients is always returned as an array.) |
Patients.FirstName |
String |
First name |
Patients.LastName |
String |
Last Name |
Patients.MiddleName |
String |
Middle name |
Patients.DOB |
String |
ODB |
Patients.SSN |
String |
SSN (this is masked unless request has SSN) |
Patients.RecordCount |
Integer |
Number of records with this information (usually |
Patients.Score |
Integer |
From 1-99, higher is better. >90 is typical for a very likely chance of exact match |
Patients.GroupId |
String |
GroupId |
Patients.Emails |
String |
(not supported yet) |
Patients.Address |
Object |
Address object as request |
Patients.Address.AddressLine1 |
String |
Address1 |
Patients.Address.AddressLine2 |
String |
Address2 |
Patients.Address.City |
String |
City |
Patients.Address.State |
String |
State |
Patients.Address.ZipCode |
String |
Zip |
Patients.Address.ReportedDate |
String |
The date on which the patient''s record was last updated. |
Patients.PhoneNumber |
String |
(not supported yet) |'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
FirstName:
type: string
example: JOHN
MiddleName: {}
LastName:
type: string
example: WILLIAMS
DOB:
type: string
example: 07/12/1938
SSN: {}
PhoneNumber: {}
Address:
type: object
properties:
AddressLine1: {}
AddressLine2: {}
City: {}
State: {}
ZipCode: {}
Location: {}
ReferenceNumber: {}
SearchCriteriaId: {}
example:
FirstName: JOHN
MiddleName: null
LastName: WILLIAMS
DOB: 07/12/1938
SSN: null
PhoneNumber: null
Address:
AddressLine1: null
AddressLine2: null
City: null
State: null
ZipCode: null
Location: null
ReferenceNumber: null
SearchCriteriaId: null
responses:
'200':
description: OK
security:
- bearerAuth: []
clientApiId: []
/API/GetPatientFinderResponse/{requestId}:
get:
operationId: getPatientFinderResponse
tags:
- Patient Demographic Validator
summary: GetPatientFinderResponse
description: 'Environment |
URL |
Test |
https://testapi.pverify.com/API/GetPatientFinderResponse/{id} |
Production |
https://api.pverify.com/Test/API/GetPatientFinderResponse/{id} |
This GET method will return complete response of PatientFinderInquiry endpoint. This call allows you to get the patient demographicverification result by a unique transaction ID.
GetPatientFinderResponse Request
Key |
Value |
URL |
https://api.pverify.com/API/GetEligibilityResponse/{id} |
Method |
GET |
Headers |
Description |
Authorization |
Authorization token from above preceded by the String "Bearer" |
Client-API-Id* |
Your pVerify client-api-id |
*Note: The Client-API-Id header is required. Header keys are case sensitive.
A successful GetPatientFinderResponse call will have the same format as the Patient Finder Inquiry response (above).'
parameters:
- name: requestId
in: path
required: true
schema:
type: string
description: Unique pVerify transaction / request id returned by the matching inquiry call.
responses:
'200':
description: OK
security:
- bearerAuth: []
clientApiId: []
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: 'OAuth2 access token returned by POST /Token, sent as `Authorization: Bearer <token>`.'
clientApiId:
type: apiKey
in: header
name: Client-API-Id
description: Client API identifier issued by pVerify. Required on every call; header keys are case sensitive.
clientSecret:
type: apiKey
in: header
name: Client-Secret
description: Client secret issued by pVerify, used by the one-step (no-token) endpoints and the premium report endpoints.