Verifiable Notes API
These endpoints allow you to create and manage provider notes.
These endpoints allow you to create and manage provider notes.
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/verifiable-notes-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: Verifiable API Documentation Notes API
description: '# Introduction
This document contains the official documentation for the latest version of the Verifiable API.'
version: 26.12.1.962
servers:
- url: https://discovery.verifiable.com/api
description: Production
- url: https://discovery-staging.verifiable.com/api
description: Staging
tags:
- name: Notes
description: These endpoints allow you to create and manage provider notes.
paths:
/providers/{providerId}/notes:
post:
tags:
- Notes
summary: Create a new provider note
description: Creates a note associated with the specified provider.
operationId: CreateNote
parameters:
- name: providerId
in: path
description: Identifier of the provider to create a note for.
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProviderNotesRequestModel'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/ProviderNotesModel'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Server Error
security:
- Bearer: []
get:
tags:
- Notes
summary: List provider notes
description: Returns all notes associated with the specified provider. This also returns any dismissal related to alerts on this provider.
operationId: ListNotes
parameters:
- name: providerId
in: path
description: Identifier of the provider to get all notes for.
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Success
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ProviderNotesModel'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Server Error
security:
- Bearer: []
/providers/{providerId}/notes/{noteId}:
get:
tags:
- Notes
summary: Get an existing provider note
description: Gets an existing note associated with the specified provider.
operationId: GetNote
parameters:
- name: providerId
in: path
description: Identifier of the provider associated with the note.
required: true
schema:
type: string
format: uuid
- name: noteId
in: path
description: Identifier of the note.
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ProviderNotesModel'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Server Error
security:
- Bearer: []
put:
tags:
- Notes
summary: Change an existing provider note
description: Change an existing note associated with the specified provider.
operationId: EditNote
parameters:
- name: providerId
in: path
description: Identifier of the provider associated with the note to change.
required: true
schema:
type: string
format: uuid
- name: noteId
in: path
description: Identifier of the note to be changed.
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProviderNotesRequestModel'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ProviderNotesModel'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'409':
description: Conflict
'500':
description: Server Error
security:
- Bearer: []
delete:
tags:
- Notes
summary: Delete an existing provider note
description: Deletes an existing note associated with the specified provider.
operationId: DeleteNote
parameters:
- name: providerId
in: path
description: Identifier of the provider associated with the note to delete.
required: true
schema:
type: string
format: uuid
- name: noteId
in: path
description: Identifier of the note to be deleted.
required: true
schema:
type: string
format: uuid
responses:
'204':
description: No Content
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'409':
description: Conflict
'500':
description: Server Error
security:
- Bearer: []
components:
schemas:
ProviderModel:
required:
- credentialingStatus
- firstName
- lastName
type: object
properties:
id:
type: string
description: Unique identifier associated with this provider.
format: uuid
firstName:
minLength: 1
type: string
description: The first (given) name associated with this provider.
lastName:
minLength: 1
type: string
description: The last (family) name associated with this provider.
dateOfBirth:
type: string
description: The date of birth of this provider.
format: date-time
ssn:
type: string
description: The social security number of this provider.
credentialingStatus:
minLength: 1
type: string
description: The name of credentialing status. The default value is 'Data Collection'.
credentialedDate:
type: string
description: Date this provider was originally credentialed
format: date-time
nextCredentialingDate:
type: string
description: Date this provider should be credentialed next
format: date
npi:
type: integer
description: The 10 digit National Provider Identifiers (NPI) of this provider.
format: int64
deactivated:
type: boolean
description: If set, the provider is deactivated. Verifications and profile imports can't be triggered for the inactive provider.
deactivatedAt:
type: string
format: date-time
aliases:
type: array
items:
$ref: '#/components/schemas/ProviderAliasModel'
description: A list of aliases that this provider is also known by.
primaryPracticeState:
enum:
- AL
- AK
- AZ
- AR
- CA
- CO
- CT
- DE
- DC
- FL
- GA
- HI
- ID
- IL
- IN
- IA
- KS
- KY
- LA
- ME
- MD
- MA
- MI
- MN
- MS
- MO
- MT
- NE
- NV
- NH
- NJ
- NM
- NY
- NC
- ND
- OH
- OK
- OR
- PA
- RI
- SC
- SD
- TN
- TX
- UT
- VT
- VA
- WA
- WV
- WI
- WY
- AS
- GU
- MP
- PR
- VI
type: string
description: The primary practice state of the provider.
additionalPracticeStates:
type: array
items:
enum:
- AL
- AK
- AZ
- AR
- CA
- CO
- CT
- DE
- DC
- FL
- GA
- HI
- ID
- IL
- IN
- IA
- KS
- KY
- LA
- ME
- MD
- MA
- MI
- MN
- MS
- MO
- MT
- NE
- NV
- NH
- NJ
- NM
- NY
- NC
- ND
- OH
- OK
- OR
- PA
- RI
- SC
- SD
- TN
- TX
- UT
- VT
- VA
- WA
- WV
- WI
- WY
- AS
- GU
- MP
- PR
- VI
type: string
description: Additional practice states of the provider. Cannot include the primary practice state.
gender:
enum:
- Unknown
- Male
- Female
- NonBinaryOrThirdGender
- Other
- PreferNotToSay
type: string
description: Provider's gender (optional).
ethnicity:
type: array
items:
enum:
- AmericanIndianOrAlaskaNative
- Asian
- BlackOrAfricanAmerican
- HispanicOrLatino
- NativeHawaiianOrOtherPacificIslander
- White
- PreferNotToSay
- NoInformationToAnswer
type: string
description: Provider's ethnicity (optional).
addresses:
type: array
items:
$ref: '#/components/schemas/ProviderAddressModel'
description: If set, the provider's `addresses` will be updated with this value. To remove the addresses pass an empty array.
emails:
type: array
items:
$ref: '#/components/schemas/ProviderEmailModel'
description: If set, the provider's `emails` will be updated with this value. To remove the emails pass an empty array.
phone:
type: string
description: Primary phone number associated with this provider
languages:
type: array
items:
type: string
description: A list of languages, other than English, this provider speaks.
recredentialedDates:
type: array
items:
type: string
format: date-time
description: A list of dates when this provider was re-credentialed.
providerType:
$ref: '#/components/schemas/ProviderTypeModel'
nuccGroup:
$ref: '#/components/schemas/TaxonomyGroupModel'
segment:
$ref: '#/components/schemas/SegmentModel'
createdAt:
type: string
description: Timestamp when this provider was created.
format: date-time
additionalProperties: false
AlertData:
type: object
properties:
messageTemplate:
type: string
description: An informative human readable message describing the action in the audit log entry.
messageParams:
type: object
additionalProperties:
type:
- string
- 'null'
description: Collection of key/value pairs containing parameters to be replaced in `messageTemplate`.
data:
type: object
additionalProperties:
type:
- string
- 'null'
additionalProperties: false
ProviderAliasModel:
type: object
properties:
firstName:
type: string
description: The first (given) name of this alias.
lastName:
type: string
description: The last (family) name of this alias.
id:
type: string
description: Unique identifier for this alias.
format: uuid
additionalProperties: false
TaxonomyGroupModel:
type: object
properties:
id:
type: string
description: Unique identifier for the taxonomy group.
format: uuid
name:
type: string
description: Name of the taxonomy group (e.g., "Allopathic & Osteopathic Physicians").
additionalProperties: false
example:
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
name: Allopathic & Osteopathic Physicians
AlertModel:
type: object
properties:
type:
enum:
- LicenseChanged
- LicenseExpiresSoon
- LicenseExpired
- ProfileImportCompleted
type: string
description: The type of event that led to this alert.
providerId:
type: string
description: Identifier of the provider related to this alert.
format: uuid
provider:
$ref: '#/components/schemas/ProviderModel'
entityType:
enum:
- License
- Verification
- Alert
- NpiRecord
- Note
- BoardCertification
- BoardCertificationVerification
- DeaVerification
- DatasetScan
- DatasetRecord
- File
- ProfileImport
- NpdbVerificationRequest
type: string
description: If set, the type of the entity that `EntityId` refers to.
entityId:
type: string
description: Identifier of the related entity that's relevant to this alert type.
format: uuid
data:
$ref: '#/components/schemas/AlertData'
timestamp:
type: string
description: The date and time when this alert was triggered.
format: date-time
dismissalTimestamp:
type: string
description: The date and time when this alert was dismissed, if at all.
format: date-time
dismissalNote:
type: string
description: The note supplied as reason for dismissal, if and when this alert was dismissed.
id:
type: string
description: Unique identifier for this alert.
format: uuid
additionalProperties: false
ProviderAddressModel:
required:
- addressLine1
- city
- state
- zipCode
type: object
properties:
state:
enum:
- AL
- AK
- AZ
- AR
- CA
- CO
- CT
- DE
- DC
- FL
- GA
- HI
- ID
- IL
- IN
- IA
- KS
- KY
- LA
- ME
- MD
- MA
- MI
- MN
- MS
- MO
- MT
- NE
- NV
- NH
- NJ
- NM
- NY
- NC
- ND
- OH
- OK
- OR
- PA
- RI
- SC
- SD
- TN
- TX
- UT
- VT
- VA
- WA
- WV
- WI
- WY
- AS
- GU
- MP
- PR
- VI
type: string
description: Abbreviation of the state in which the city is located.
zipCode:
minLength: 1
type: string
description: The postal code associated with the address.
city:
minLength: 1
type: string
description: The city in which the address is located.
addressLine1:
minLength: 1
type: string
description: The street address.
addressLine2:
type: string
description: The secondary address information.
type:
enum:
- Unspecified
- Home
- Work
type: string
description: The type of address.
id:
type: string
description: Unique identifier for this address.
format: uuid
additionalProperties: false
ProviderTypeModel:
type: object
properties:
id:
type: string
description: Unique identifier associated with this provider type.
format: uuid
name:
type: string
description: Associated provider type name.
additionalProperties: false
SegmentModel:
type: object
properties:
id:
type: string
description: Unique identifier of the segment.
format: uuid
name:
type: string
description: Name of the segment. Used for multi-tenant organizations for billing, configuration, and tracking purposes.
additionalProperties: false
example:
id: 3516a6ba-c998-4bfb-9017-322f8cf63674
name: acme-corp
ProviderNotesRequestModel:
required:
- note
type: object
properties:
note:
minLength: 1
type: string
description: The contents of the note.
additionalProperties: false
ProviderNotesModel:
type: object
properties:
providerId:
type: string
description: Identifier of the provider related to this note.
format: uuid
timestamp:
type: string
description: The date and time when this note was created or last changed.
format: date-time
note:
type: string
description: The contents of the note.
id:
type: string
description: Unique identifier for this note.
format: uuid
alert:
$ref: '#/components/schemas/AlertModel'
additionalProperties: false
ProviderEmailModel:
type: object
properties:
email:
type: string
description: The email associated with the provider.
type:
enum:
- Unspecified
- Personal
- Work
type: string
description: The type of the email.
id:
type: string
description: Unique identifier for this specific email.
format: uuid
additionalProperties: false
securitySchemes:
Bearer:
type: http
description: 'Enter your bearer token in the format: Bearer {your token}'
scheme: bearer
bearerFormat: custom
x-tagGroups:
- name: Authentication
tags:
- Authentication
- name: Definitions
tags:
- Definitions
- name: Providers
tags:
- Providers
- ProvidersInfo
- ProviderProfiles
- Notes
- Files
- name: Facilities
tags:
- Facilities
- FacilitiesInfo
- FacilitiesSpecialties
- name: Verifications
tags:
- Licenses
- Datasets
- DEA
- BoardCertifications
- name: Monitoring
tags:
- Monitoring
- Alerts
- name: Credentialing
tags:
- CredentialingRequests
- name: Integrations
tags:
- Integrations
- Webhooks
- name: Audits
tags:
- Audit
- name: Account
tags:
- Users
- name: Organizations
tags:
- Reports
- name: Models
tags:
- Dataset Records
- Webhook Callbacks