Introduction

The Credentialing Genie API is organized around REST. Our API has predictable resource-oriented URLs, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

Use the API to retrieve information about your dental companies, offices, and dentists. You can also track insurance credentialing statuses in real-time.

Authentication

The API uses a token-based authentication system. Most endpoints require an api_token to be passed in the Authorization header.

The Logic

First, obtain a token via the login endpoint using your credentials. This token is valid for 24 hours.

user string (required)
The email address associated with your API account.
password string (required)
Your secure API password.

Errors

Credentialing Genie uses standard HTTP codes to indicate overall request status. However, for multi-action calls, specific resource errors may be returned within the data object even if the primary response is successful.

400 - Bad Request
The request was unacceptable, often due to missing a required parameter or specifying an invalid action.
401 - Unauthorized
No valid API token or expired session.
429 - Too Many Requests
Exceeded the 300 requests/1 minutes limit.

Message: Too many requests. Please try again after 1 minutes.

Rate Limits

To ensure system stability, the API is limited to 300 requests per 1 minutes per IP address. Exceeding this limit will trigger a 429 error.

Pagination

Most lists retrieval endpoints provide a pagination object in the response. You can control the results via query parameters.

current_page integer
The page number to retrieve. Default: 1.
per_page integer
A limit on the number of objects to be returned. Default: 50.

Accounts

Accounts represent API users or team members. You can create, update, and manage access for individuals who interact with the Credentialing Genie platform.

The Account Object

key string
Unique identifier representing the account entity. This key is used in modifying actions (update/delete) and details retrieval.
first_name / last_name string
The legal first name and last name of the user.
email string
The email address used for login and notifications.
list_companies string
A comma-separated list of secure, encrypted company keys that this account is authorized to access.

Accounts

GET /api/get_accounts

Accounts represent API users or team members. You can retrieve all accounts linked to your user token.

Create Account

POST /api/create_user

Register a new API user account.

first_name string (required)
last_name string (required)
email string (required)
password string (required)
Must be at least 6 characters.
company_list string (optional)
A comma-separated list of secure, this account is authorized to access.

Update Account

POST /api/update_user

Modify an existing account's information. Note: At least one of the optional fields below must be provided to perform an update.

key string (required)
The key of the account to update.
first_name string (optional)
middle_name string (optional)
last_name string (optional)
email string (optional)
password string (optional)
company_list string (optional)
A comma-separated list of secure, this account is authorized to access.

Delete Account

POST /api/delete_user

Permanently remove an account and its associated API mappings.

key string (required)
The key of the account to delete.

Companies

GET /api/get_companies

Companies represent the top-level entity in your dental organization. A company can be a "single" office group or a "parent" group containing multiple children.

Create Company

POST /api/create_companies

Register a new single company or a group company. Group companies can bundle multiple single companies together.

Common Parameters

company_name string (required)
The legal name of the company or group.
type string (optional)
Type of company. Set to single for a standard office company, or group for a parent group. Default is single.

Parameters for Single Company (type = single)

company_dba_name string (required)
The Doing Business As name.
tax_id_tin string (required)
The Tax Identification Number (TIN). Can also be passed as tax_id.
group_npi string (required)
The Group National Provider Identifier (NPI).
select_Offices string (optional)
Comma-separated list of office keys or keys to link. Can also be passed as offices.

Parameters for Group Company (type = group)

company_list string (required)
Comma-separated list of child company keys or keys to bundle under this group.

Update Company

POST /api/update_companies

Modify an existing single company or group company's information.

key string (required)
The unique key of the company to update.
company_name string (optional)
The new name of the company or group. Can also be passed as group_name.

For Single Company Updates

company_dba_name string (required)
tax_id_tin string (required)
Can also be passed as tax_id.
group_npi string (required)
select_Offices string (optional)
Can also be passed as offices. Passing new offices will overwrite previous linked offices.

For Group Company Updates

select_Company string (required)
Can also be passed as companies. Commma-separated list of child company keys to bundle under this group. Overwrites previous child companies.

Delete Company

POST /api/delete_companies

Permanently remove a single or group company record. Removing a single company unlinks all associated offices cleanly.

key string (required)
The unique key of the company to delete.

Offices

GET /api/get_offices

Offices represent physical dental practice locations. Each office belongs to a specific Company and contains lists of associated dentists and active insurance plans.

Create Office

POST /api/create_offices

Endpoint to register a new physical office location. This will automatically set up the office identity, location and schedule, practice owner details, EFT payment routing, associated dentists, and insurance plans, and download all uploaded credential documents from target URLs.

Information

office_name string (required)
The legal and practice name of the office/business entity.
tax_id string (required)
The Tax Identification Number (TIN) or Employer Identification Number (EIN) for the office.
group_npi_number string (required)
The Group National Provider Identifier (NPI).
manager_email string (required)
The primary contact email address of the Office Manager. Must be a valid email format.
email string
General email address for the office.

Location & Schedule

billing_address string (required)
Billing street address.
billing_city string (required)
Billing city.
billing_state string (required)
Billing state code (e.g. AZ).
billing_zip string (required)
Billing ZIP/postal code.
primary_address string (required)
Primary physical address of the practice location.
primary_city string (required)
Primary office city.
primary_state string (required)
Primary office state code.
primary_zip string (required)
Primary office ZIP/postal code.
office_phone string (required)
Office phone number.
office_fax string
Office fax number.
languages string (required)
Flat list or string of spoken languages in the clinic.
dentist_names string
Flat list or string of practitioner dentist names.
schedule object
Weekly office schedule containing daily statuses, open/close times, and period tags. (Includes days: Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday. Each day has: status ('open'/'closed'), openTime, openPeriod ('AM'/'PM'), closeTime, closePeriod ('AM'/'PM')).

Owner & Specialty Info

owner_name string (required)
Full legal name of the practice owner.
owner_gender string (required)
Gender of the practice owner. Options: male, female.
owner_dob date (required)
Date of birth of the owner. Format: mm/dd/YYYY.
owner_ssn string (required)
Social Security Number of the owner.
owner_is_dentist string (required)
Is the practice owner a licensed dentist? Options: yes, no. If yes, the additional licensing, DEA, NPI, and degree fields below are strictly required.
owner_license_number string (conditional)
State dental license number of the owner. Required if owner_is_dentist is "yes".
owner_license_expiration date (conditional)
State license expiration date. Format: mm/dd/YYYY. Required if owner_is_dentist is "yes".
owner_dea_number string (conditional)
Federal DEA certificate number of the owner. Required if owner_is_dentist is "yes".
owner_dea_expiration date (conditional)
DEA certificate expiration date. Format: mm/dd/YYYY. Required if owner_is_dentist is "yes".
owner_npi string (conditional)
Individual National Provider Identifier (NPI) of the owner. Required if owner_is_dentist is "yes".
owner_degree_dmd string (conditional)
Holds DMD degree. Options: 1 or empty. Required (at least one DMD, DDS, or Other degree checked) if owner_is_dentist is "yes".
owner_degree_dds string (conditional)
Holds DDS degree. Options: 1 or empty. Required (at least one DMD, DDS, or Other degree checked) if owner_is_dentist is "yes".
owner_degree_other_toggle string
Has other degree. Options: 1 or empty.
owner_degree_other string (conditional)
Name of other professional degree. Required if owner_degree_other_toggle is "1".
owner_specialty string (conditional)
Provider's primary specialty (e.g. licensed, general). Required if owner_is_dentist is "yes".
specialty_area array (conditional)
Array of specialty areas. Allowed items: Orthodontist, Oral Surgeon, Periodontist, Prosthodontist, Endodontist, Pediatric Dentist. Required (at least one) if owner_specialty is "licensed".
specialty_school_name string (conditional)
Name of specialized dental residency/school. Required if owner_specialty is "licensed".
specialty_school_city string (conditional)
Specialty school city location. Required if owner_specialty is "licensed".
specialty_school_state string (conditional)
Specialty school state location. Required if owner_specialty is "licensed".
specialty_school_zip string (conditional)
Specialty school ZIP/postal code. Required if owner_specialty is "licensed".
specialty_school_start date (conditional)
Specialty school residency start date. Format: mm/dd/YYYY. Required if owner_specialty is "licensed".
specialty_school_end date (conditional)
Specialty school residency end/completion date. Format: mm/dd/YYYY. Required if owner_specialty is "licensed".

EFT & Banking

eft_name string
Name listed on the bank account.
eft_type string
Classification of the account (e.g. checking, savings).
eft_institution string
Name of the financial institution/bank.
eft_account string
Bank account number.
eft_routing string
Routing transit number.
eft_agree string
Acceptance agreement tag. Options: 1 (Agree to sign/authorize offline) or 2 (Agree to direct deposit/EFT). If 2, providing ob_doc_eft_voided voided check is required.

Entity & Dentist Mappings

dentists string
Comma-separated list of secure encrypted dentist entity keys to associate with the office.
ins_ppo string
Comma-separated list of secure encrypted insurance carrier keys to associate with the office.

Upload Documents (Source URLs)

ob_doc_w9 URL (required)
Fully-qualified public/secure URL of the W-9 form.
ob_doc_owner_signature URL (required)
Fully-qualified public/secure URL of the Owner Signature file.
ob_doc_dental_license URL (conditional)
Fully-qualified public/secure URL of the Owner Dental License file. Required if owner_is_dentist is "yes".
ob_doc_dea_license URL (conditional)
Fully-qualified public/secure URL of the Owner DEA Certificate file. Required if owner_is_dentist is "yes".
ob_doc_eft_voided URL (conditional)
Fully-qualified public/secure URL of the banking authorization / EFT voided check file. Required if eft_agree is "2".

Update Office

POST /api/update_offices

Modify an existing physical office location. Only provided fields will be updated, retaining existing details for omitted fields. If a new file source URL is provided, it replaces the old file in storage.

key string (required)
The secure encrypted office key.
office_name string
Modified legal and practice name.
tax_id string
Modified Tax ID.

All other fields supported by the /api/create_offices endpoint can also be optionally passed to modify the office identity, location, owner, schedule, banking, associated dentists, or PPO insurances.

Delete Office

POST /api/delete_offices

Permanently remove an office profile and dissolve its associated API mapping. The office status is updated to inactive/deleted (2).

key string (required)
The secure encrypted office key.

Dentists

GET /api/get_dentist

Access detailed credentialing information for dental providers. This includes licensing, DEA information, educational backgrounds, and professional history.

Create Dentist

POST /api/create_dentist

Register a new dentist profile and submit their onboarding information including personal data, licenses, and documentation.

Information

first_name string (required)
Dentist's legal first name.
middle_name string
Dentist's middle name.
last_name string (required)
Dentist's legal last name.
email string (required)
The dentist's professional email address (must be unique).
phone string (required)
The dentist's telephone contact number.
gender string (required)
Basic demographic gender of the provider. Options: male, female.
dob date (required)
Date of birth. Format: mm/dd/YYYY.
birthplace string (required)
City, State or Country of birth.
us_citizen string (required)
Is the dentist a US citizen? Options: yes, no.
allowed_in_us string (conditional)
Is the provider authorized to work in the US? Options: yes, no. Required if us_citizen is "no".
work_visa_expired_at date (conditional)
Visa expiration date if applicable. Format: mm/dd/YYYY. Required if us_citizen is "no".
npi string (required)
Dentist's individual 10-digit National Provider Identifier.
ssn string (required)
Dentist's Social Security Number.
caqh_id string
CAQH Provider ID.
has_caqh_acc string (required)
Does the dentist have a CAQH account? Options: yes, no.
caqh_username string (conditional)
CAQH username if registered. Required if has_caqh_acc is "yes".
caqh_password string (conditional)
CAQH password. Required if has_caqh_acc is "yes".
languages_of_provide string (required)
Comma-separated list of languages spoken by the provider.
dentist_office_name string (required)
Name of primary office associated with the dentist.

File Attachments

These fields expect secure, downloadable URLs. The API will download files locally upon reception.

ob_doc_dentist_signature string (URL) (required)
URL to download the provider's digital signature file.
ob_doc_dentist_cv string (URL) (required)
URL to download the CV/Resume.
ob_doc_dentist_license string (URL) (required)
URL to download the State Dental License copy.
ob_doc_dentist_diploma string (URL) (required)
URL to download the Dental School Diploma.
ob_doc_dentist_dea string (URL) (conditional)
URL to download the Federal DEA registration copy. Required if have_DEA_license is "1".
ob_doc_dentist_pli string (URL) (required)
URL to download the PLI (Professional Liability Insurance) declaration page copy.
ob_doc_specialist_certificate string (URL) (optional)
URL to download the specialist certification board certificate.
ob_doc_dentist_violation string (URL) (optional)
URL to download explanation documents or resolution decrees for disclosures. Required if any disclosure question flag is "yes".

Specialty Focus & Schooling

specialty string (required)
Primary clinical specialty (e.g. licensed, general). If licensed, specific specialty details and schooling below are required.
Specialty Area Toggles string (conditional)
Provide "1" or empty to indicate focus. Required (at least one checked) if specialty is "licensed":
area_of_specialty_endodontist
area_of_specialty_oral_surgeon
area_of_specialty_orthodontist
area_of_specialty_pediatric_dentist
area_of_specialty_periodontist
area_of_specialty_prosthodontist
Specialty School details group
Detailed schooling for specialists:
specialty_school_name string (conditional)
Required if specialty is "licensed".
specialty_school_city string (conditional)
Required if specialty is "licensed".
specialty_school_state string (conditional)
Required if specialty is "licensed".
specialty_school_postcode string (conditional)
Required if specialty is "licensed".
specialty_school_start_date date (conditional)
Required if specialty is "licensed".
specialty_school_completion_date date (conditional)
Required if specialty is "licensed".

Licensing & Insurance

Primary License details group
Main dental license parameters:
license_number string (required)
State dental license number.
license_issued date (required)
Format: mm/dd/YYYY.
license_expiration date (required)
Format: mm/dd/YYYY.
license_state string (required)
Two-letter US state code of licensure.
Other Dental Licenses group
Licensed in other states:
dental_license_in_other_states string (required)
Options: yes, no.
other_license_state_name string (conditional)
Required if dental_license_in_other_states is "yes".
other_current_license_number string (conditional)
Required if dental_license_in_other_states is "yes".
other_issued_date date (conditional)
Required if dental_license_in_other_states is "yes".
other_expiration_date date (conditional)
Required if dental_license_in_other_states is "yes".
DEA License details group
Federal drug registry license parameters:
have_DEA_license string (required)
Does dentist hold active DEA license? Options: 1 (Yes) or 2 (No).
dea_license_number string (conditional)
Required if have_DEA_license is "1".
dea_issued_date date (conditional)
Required if have_DEA_license is "1".
dea_expiration_date date (conditional)
Required if have_DEA_license is "1".
state_of_dea_licensure string (conditional)
Required if have_DEA_license is "1".
applied_the_certificate_have_not_received string
Question: "I have applied for the certificate but have not received it as of yet."
Options: 1 or empty.
Required if have_DEA_license is "2".
chose_not_to_renew string
Question: "I chose not to renew."
Options: 1 or empty.
Required if have_DEA_license is "2".
never_applied_for_one string
Question: "I never applied for one."
Options: 1 or empty.
Required if have_DEA_license is "2".
referred_to_primary_care_provider string
Question: "Referred to their primary care provider."
Options: 1 or empty.
Required if have_DEA_license is "2".
refer_to_associate_with_active_DEA string
Question: "Refer them to an associate that has an active DEA certificate."
Options: 1 or empty.
Required if have_DEA_license is "2".
dea_provider_name string (conditional)
Required if have_DEA_license is "2".
dea_certificate_number string (conditional)
Required if have_DEA_license is "2".
Professional Liability Insurance (PLI) group
Malpractice insurance parameters:
pli_policy_number string (required)
pli_carrier_name string (required)
pli_effective_date date (required)
Format: mm/dd/YYYY.
pli_expiration_date date (required)
Format: mm/dd/YYYY.

Dental School Education

dental_school_name string (required)
The legal name of the graduating Dental School.
school_type string
Options: us, oversea.
dental_school_city string
dental_school_state string
dental_school_postcode string
dental_school_address_oversea string
Overseas address details if school type is oversea.
dental_school_start_date date (required)
dental_school_completion_date date (required)
Degree Toggles string (required)
Provide "1" or empty to indicate degree type (At least one must be checked):
dental_school_degree_awarded_dmd
dental_school_degree_awarded_dds
dental_school_degree_awarded_other_toggle
dental_school_degree_awarded_other string (conditional)
Custom degree name description. Required if dental_school_degree_awarded_other_toggle is "1".

Disclosure Questionnaire

Standardized clinical/professional background disclosure checklist. Provide "yes" or "no" for each flag (All 25 items are required):

has_license_or_certification_issues string
1. Has your license, registration or certification to practice in your profession ever been voluntarily or involuntarily relinquished, denied, suspended, revoked, restricted, or have you ever been subject to a fine, reprimand, consent order, probation or any conditions or limitations by any state or professional licensing, registration or certification board?
licensure_challenge string
2. Has there been any challenge to your licensure, registration or certification?
payment_participation_status string
3. Has your participation for receiving payment under the Medical Assistance, Medicaid, or Medicare program been suspended or limited or have you voluntarily terminated your participation?
criminal_or_civil_offenses string
4. In the past ten years have you been convicted of, pled guilty to, or pled nolo contendere to any misdemeanor (excluding minor traffic violations) or been found liable or responsible for any civil offense that is reasonably related to your qualifications, competence, functions, or duties as a medical professional, or for fraud, an act of violence, child abuse or a sexual offence or sexual misconduct?
felony_conviction_status string
5. Have you ever been convicted of, pled guilty to, or pled nolo contendere to any felony?
malpractice_judgment_status string
6. Have you ever had a judgment made against you for alleged malpractice, negligence, or related matters?
professional_liability_judgment string
7. Have you ever had a judgment made against you in a professional liability case or has your liability insurer placed any conditions or restrictions on your coverage or ability or attain coverage?
liability_actions_last_10_years string
8. Have you ever had any professional liability actions (pending, settled, arbitrated, mediated or litigated) within the past 10 years? If yes, provide information for each case?
substance_abuse_treatment_status string
9. Are you or have you been under the treatment for the use of narcotics, barbiturates, alcohol, or other drugs?
health_conditions_affecting_services string
10. Do you presently have any physical or mental conditions that would adversely affect your ability to provide high quality professional services? Are there any accommodations that need to be considered? Please list accommodations below?
managed_care_participation_status string
11. Has your participation with a managed care organization, other health care organization, or hospital privileges been suspended, limited, or terminated?
dea_registration_status string
12. Has your Drug Enforcement Agency (DEA) registration been denied, revoked, suspended, or not renewed?
illegal_drug_use string
13. Are you currently using illegal drugs or controlled substances?
national_data_bank_reporting string
14. To your knowledge, has information pertaining to you ever been reported to the National Practitioner Data Bank or Healthcare Integrity and Protection Data Bank?
regulatory_agency_sanctions string
15. Have you ever received sanctions from or are you currently the subject of investigation by any regulatory agencies?
sexual_harassment_misconduct string
16. Have you ever been convicted of, pled guilty to, pled nolo contendere to, sanctioned, reprimanded, restricted, disciplined or resigned in exchange for no investigation or adverse action within the last ten years for sexual harassment or other illegal misconduct?
military_hospital_investigation string
17. Are you currently being investigated or have you ever been sanctioned, reprimanded, or cautioned by a military hospital, facility, or agency, or voluntarily terminated or resigned while under investigation or in exchange for no investigation by a hospital or healthcare facility of any military agency?
liability_coverage_cancellation string
18. Has your professional liability coverage ever been canceled, restricted, declined or not renewed by the carrier based on your individual liability history?
liability_insurance_surcharge string
19. Have you ever been assessed a surcharge, or rated in a high-risk class for your specialty, by your professional liability insurance carrier, based on your individual liability history?
patient_safety_risk string
20. Do you have any reason to believe that you would pose a risk to the safety or well being of your patients?
essential_functions_inability string
21. Are you unable to perform the essential functions of a practitioner in your area of practice even with reasonable accommodation?
dental_board_communication string
22. Within the last 10 years, did you have to respond to an email from the Dental Board?
dental_board_letter_response string
23. Within the last 10 years, did you have to respond to a letter from the Dental Board?
malpractice_insurance_assistance string
24. Within the last 10 years, did you have to call your Malpractice Insurance to help you?
duiviolation string
25. Have you ever received a DUI violation?

Explanations & Background Info

text_explanation string (conditional)
Detailed explanation for any "yes" answers on the questionnaire. Required if any disclosure question is "yes".
date_Incident date (conditional)
Date of the incident. Format: mm/dd/YYYY. Required if any disclosure question is "yes".
resolution_details string (conditional)
Details regarding the resolution of any disclosure incidents. Required if any disclosure question is "yes".

Update Dentist

POST /api/update_dentist

Modify an existing dentist's profile information. Only provided fields will be updated, retaining existing details for omitted fields.

key string (required)
The secure encrypted dentist key.
first_name string
Modified first name.
last_name string
Modified last name.
email string
Modified email address.

All other fields supported by the /api/create_dentist endpoint can also be optionally passed to modify the provider's credentials, files, specialty details, or questionnaire items.

Delete Dentist

POST /api/delete_dentist

Remove a dentist profile and dissolve their API relationship mapping. The dentist's status is updated to deleted (2).

key string (required)
The secure encrypted dentist key.

Insurances

GET /api/get_insurances

Retrieve insurance plans and their associated credentialing states for specific dental practices.

Create Insurance

POST /api/create_insurances

Register a new insurance carrier and configure its state-specific contact and application details.

insurance_name string (required)
insurance_type int (required)
e.g., 1: PPO, 2: AHCCCS, 3: HMO, 4: Optional PPO.
insurance_states array (required)
An array of state configuration objects containing state (array), email, phone, website, and file (URL).

Update Insurance

POST /api/update_insurances

Modify an existing insurance carrier's properties or state configurations.

key string (required)
The unique identifier (key) for the insurance carrier.
insurance_name string (required)
insurance_type string (required)
e.g., 1: PPO, 2: AHCCCS, 3: HMO, 4: Optional PPO.
insurance_states array (required)
An array of state configuration objects containing state (array), email, phone, website, and file (URL).

Delete Insurance

POST /api/delete_insurances

Permanently remove an insurance carrier and its associated state configurations and files.

key string (required)
The unique identifier (key) for the insurance carrier.

Application Credentialing

GET /api/get_applications

Track the complete lifecycle of insurance credentialing applications for your providers and offices.

Attributes

id integer
Unique identifier for the application record.
status integer
Current state of the application.
Options: 1: Approved, 2: Processing, 3: Denied, 4: Waiting, 5: New, 6: Unresponsive Insurances, 7: Cancel.
type integer
The method used for application submission.
Options: 1: Email, 2: Online.

Key Dates

approved_date / sent_date / checked_date string
Critical milestones in the credentialing timeline. Format: mm/dd/YYYY.

Documentation & Attachments

attachment URL (secure)
Direct link to the primary signed application or summary document.
entity_info object
A structured map of supporting documentation, including:
  • initial_application: Original submission files.
  • additional_docs: Supplemental evidence requested by carriers.

Relations

office_name / first_name / last_name / insurance_name string
Human-readable labels for the associated office, dentist, and insurance carrier.
BASE URL
https://credentialinggenie.com/api