TaigaTaiga

Onboard a Provider

Register a therapist and their practice before submitting sessions.

POST /api/v1/partner/providers

Register a therapist before submitting sessions on their behalf. This creates the practice and provider records we need to submit claims under their NPI.

Idempotent on NPI — if the provider already exists, we return the existing record with "status": "already_exists".

Request

const response = await fetch("https://api.usetaiga.com/api/v1/partner/providers", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    provider: {
      firstName: "Jane",
      lastName: "Smith",
      npi: "1234567890",
      taxonomyCode: "103T00000X",
      specialty: "Clinical Psychologist",
      credentials: "PhD",
    },
    practice: {
      name: "Smith Therapy Associates",
      taxId: "123456789",
      address: {
        street: "100 Main Street, Suite 200",
        city: "New York",
        state: "NY",
        zip: "10001",
      },
      phone: "2125551234",
      contactName: "Jane Smith",
    },
  }),
});

const data = await response.json();
import requests

response = requests.post(
    "https://api.usetaiga.com/api/v1/partner/providers",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    json={
        "provider": {
            "firstName": "Jane",
            "lastName": "Smith",
            "npi": "1234567890",
            "taxonomyCode": "103T00000X",
            "specialty": "Clinical Psychologist",
            "credentials": "PhD",
        },
        "practice": {
            "name": "Smith Therapy Associates",
            "taxId": "123456789",
            "address": {
                "street": "100 Main Street, Suite 200",
                "city": "New York",
                "state": "NY",
                "zip": "10001",
            },
            "phone": "2125551234",
            "contactName": "Jane Smith",
        },
    },
)

data = response.json()
curl -X POST https://api.usetaiga.com/api/v1/partner/providers \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": {
      "firstName": "Jane",
      "lastName": "Smith",
      "npi": "1234567890",
      "taxonomyCode": "103T00000X",
      "specialty": "Clinical Psychologist",
      "credentials": "PhD"
    },
    "practice": {
      "name": "Smith Therapy Associates",
      "taxId": "123456789",
      "address": {
        "street": "100 Main Street, Suite 200",
        "city": "New York",
        "state": "NY",
        "zip": "10001"
      },
      "phone": "2125551234",
      "contactName": "Jane Smith"
    }
  }'

Required fields

FieldDescription
provider.firstNameProvider's first name
provider.lastNameProvider's last name
provider.npi10-digit NPI number
practice.nameLegal practice name
practice.taxId9-digit EIN (no dashes)
practice.addressObject with street, city, state, zip

Optional fields

FieldDescriptionDefault
provider.taxonomyCodeProvider taxonomy codeInferred from specialty
provider.specialtySpecialty description
provider.credentialsCredentials (PhD, PsyD, LCSW, etc.)
practice.phonePractice phone (10 digits, no formatting)
practice.contactNameBilling contact name

Taxonomy codes

Common taxonomy codes for behavioral health providers:

CodeDescription
103T00000XPsychologist
103TA0400XPsychologist, Addiction
103TC0700XPsychologist, Clinical
1041C0700XSocial Worker, Clinical
101YM0800XCounselor, Mental Health
101YP2500XCounselor, Professional
106H00000XMarriage & Family Therapist

If you provide specialty but not taxonomyCode, we infer the taxonomy code automatically.

Response

201 Created

{
  "providerId": "uuid",
  "practiceId": "uuid",
  "providerNpi": "1234567890",
  "practiceName": "Smith Therapy Associates",
  "status": "created"
}

If the provider already exists, the response has the same shape with "status": "already_exists".

Errors

StatusCause
400Missing or invalid required fields (e.g. NPI not 10 digits, missing practice address)
401Invalid or missing API key

On this page