---
title: "Create Service"
method: POST
path: "/api/services"
tags: ["services"]
---

# Create Service

`POST /api/services`

## Headers

- `X-API-Key` string, required

## Request body

- TypeServicesServiceCreateV1Request
  - `patientId` string, required
  - `dateOfService` string, date-time, required — Full ISO8601 timestamp, including timezone
  - `serviceTypeId` string, required
  - `externalId` string
  - `location` TypeServicesServiceCreateV1RequestLocation, required
    - `line1` string
    - `line2` string
    - `city` string
    - `state` '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', required
    - `postalCode` string
    - `country` 'US'
  - `providerId` string, required
  - `serviceEligibility` TypeServicesServiceCreateV1RequestServiceEligibility
    - `id` string — Extracts fields (clinicalInfo, etc.) from an existing ServiceEligibility
    - `clinicalInfo` TypeServicesServiceCreateV1RequestServiceEligibilityFieldClinicalInfo
      - `diagnoses` TypeServicesServiceCreateV1RequestServiceEligibilityFieldClinicalInfoFieldDiagnosis[]
  - `priorAuthorizationNumber` string
  - `metadata` TypeServicesServiceCreateV1RequestMetadata
    - `exampleKey` string
  - `responsibleParty` 'PATIENT' | 'INSURANCE'

## Response `200`

Response with status 200

- TypeServicesServiceCreateV1Response
  - `id` string, required
  - `organizationId` string, required
  - `status` 'PENDING' | 'BILLING' | 'SETTLING' | 'COMPLETE' | 'TRIAGE' | 'CANCELED' | 'DENIED', required
  - `createdAt` string, date-time, required
  - `serviceType` TypeServicesServiceCreateV1ResponseServiceType, required
    - `id` string, required
    - `name` string, required
    - `placeOfService` 'TELEHEALTH_HOME' | 'TELEHEALTH_NOT_HOME' | 'OFFICE', required
    - `providerType` 'MD' | 'NP' | 'DO' | 'ND' | 'AP' | 'OT' | 'LCSW' | 'LMFT' | 'LPC' | 'PSYCH' | 'RN' | 'CN' | 'CWC' | 'CM' | 'PA' | 'RDN' | 'PT', required
    - `providerTypes` TypeServicesServiceCreateV1ResponseServiceTypeFieldProviderType[], required — All supported ProviderTypes
    - `cost` integer, required
    - `noteFields` TypeServicesServiceCreateV1ResponseServiceTypeFieldNoteField[], required
    - `conditionalPatientResponsibility` boolean, required
    - `selfPayCost` integer
  - `dateOfService` string, date-time, required
  - `externalId` string
  - `patientId` string, required
  - `location` TypeServicesServiceCreateV1ResponseLocation, required
    - `line1` string
    - `line2` string
    - `city` string
    - `state` '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', required
    - `postalCode` string
    - `country` 'US'
  - `noteId` string
  - `serviceEligibility` TypeServicesServiceCreateV1ResponseServiceEligibility, required
    - `id` string, required
    - `organizationId` string, required
    - `validatedAt` string, date-time — Timestamp this was executed
    - `serviceTypeId` string, required
    - `dateOfService` string, date-time, required
    - `status` 'PENDING' | 'UNINSURED' | 'ELIGIBLE' | 'INELIGIBLE' | 'INEFFECTIVE', required
    - `patientResponsibility` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldPatientResponsibility
      - `total` integer, required — The total amount owed by the Patient (sum of contributions and OOP-waived amounts), value is in USD cents ($15 = 1500)
      - `fallback` integer, required — The fallback amount
      - `deductible` integer, required — The deductible contribution
      - `deductibleType` 'INDIVIDUAL' | 'FAMILY'
      - `coinsurance` integer, required — The coinsurance contribution
      - `coinsurancePercent` number, double, required — The coinsurance contribution as a percentage (15% = 0.15)
      - `copayment` integer, required — The copayment contribution
      - `oopFallback` integer, required — Amount of fallback waived due to OOP limits
      - `oopCopayment` integer, required — Amount of copayment waived due to OOP limits
      - `oopCoinsurance` integer, required — Amount of coinsurance waived due to OOP limits
      - `oopDeductible` integer, required — Amount of deductible waived due to OOP limits
    - `providers` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldProvider[], required
      - `id` string, required
      - `name` string, required
      - `externalId` string
      - `type` 'MD' | 'NP' | 'DO' | 'ND' | 'AP' | 'OT' | 'LCSW' | 'LMFT' | 'LPC' | 'PSYCH' | 'RN' | 'CN' | 'CWC' | 'CM' | 'PA' | 'RDN' | 'PT', required
      - `providerEligibilityEnabled` boolean
      - `serviceEligibilityEnabled` boolean
      - `npi` string, required
    - `policyIds` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldPolicyId[], required
    - `state` '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', required
    - `messages` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldMessage[]
    - `clinicalInfo` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldClinicalInfo
      - `diagnoses` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldClinicalInfoFieldDiagnosis[]
    - `conditionalPatientResponsibilities` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldConditionalPatientResponsibility[]
      - `conditions` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldConditionalPatientResponsibilitiesElementCondition[], required
        - `diagnoses` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldConditionalPatientResponsibilitiesElementConditionsElementDiagnosis[]
      - `limit` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldConditionalPatientResponsibilitiesElementLimit, required
        - `type` 'UNKNOWN' | 'UNLIMITED' | 'LIMITED', required
        - `value` integer
        - `metric` 'VISIT' | 'UNITS'
        - `period` 'ANNUAL' | 'BENEFIT_YEAR' | 'LIFETIME'
        - `units` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldConditionalPatientResponsibilitiesElementLimitFieldUnits
          - `minutes` integer, required — Conversion rate from units to minutes
          - `min` integer, required — Minimum number of units
          - `max` integer, required — Maximum number of units
      - `patientResponsibility` TypeServicesServiceCreateV1ResponseServiceEligibilityFieldConditionalPatientResponsibilitiesElementPatientResponsibility, required
        - `total` integer, required — The total amount owed by the Patient (sum of contributions and OOP-waived amounts), value is in USD cents ($15 = 1500)
        - `fallback` integer, required — The fallback amount
        - `deductible` integer, required — The deductible contribution
        - `deductibleType` 'INDIVIDUAL' | 'FAMILY'
        - `coinsurance` integer, required — The coinsurance contribution
        - `coinsurancePercent` number, double, required — The coinsurance contribution as a percentage (15% = 0.15)
        - `copayment` integer, required — The copayment contribution
        - `oopFallback` integer, required — Amount of fallback waived due to OOP limits
        - `oopCopayment` integer, required — Amount of copayment waived due to OOP limits
        - `oopCoinsurance` integer, required — Amount of coinsurance waived due to OOP limits
        - `oopDeductible` integer, required — Amount of deductible waived due to OOP limits
  - `coverageStatus` 'PENDING' | 'REVALIDATING' | 'VALID' | 'INVALID_COVERAGE' | 'INVALID_PROVIDER', required
  - `provider` TypeServicesServiceCreateV1ResponseProvider, required
    - `id` string, required
    - `name` string, required
    - `externalId` string
    - `type` 'MD' | 'NP' | 'DO' | 'ND' | 'AP' | 'OT' | 'LCSW' | 'LMFT' | 'LPC' | 'PSYCH' | 'RN' | 'CN' | 'CWC' | 'CM' | 'PA' | 'RDN' | 'PT', required
    - `providerEligibilityEnabled` boolean
    - `serviceEligibilityEnabled` boolean
    - `npi` string, required
  - `payments` TypeServicesServiceCreateV1ResponsePayment[], required
    - `id` string, required
    - `createdAt` string, date-time, required
    - `serviceId` string, required
    - `paidAt` string, date-time, required
    - `transactionId` string, required
    - `type` 'PATIENT' | 'ADJUSTMENT', required
    - `amount` integer, required
    - `externalId` string
    - `memo` string
  - `responsibleParty` 'PATIENT' | 'INSURANCE', required
  - `patientResponsibility` TypeServicesServiceCreateV1ResponsePatientResponsibility, required
    - `amount` TypeServicesServiceCreateV1ResponsePatientResponsibilityFieldAmount
      - `total` integer, required — The total amount owed by the Patient (sum of contributions and OOP-waived amounts), value is in USD cents ($15 = 1500)
      - `fallback` integer, required — The fallback amount
      - `deductible` integer, required — The deductible contribution
      - `deductibleType` 'INDIVIDUAL' | 'FAMILY'
      - `coinsurance` integer, required — The coinsurance contribution
      - `coinsurancePercent` number, double, required — The coinsurance contribution as a percentage (15% = 0.15)
      - `copayment` integer, required — The copayment contribution
      - `oopFallback` integer, required — Amount of fallback waived due to OOP limits
      - `oopCopayment` integer, required — Amount of copayment waived due to OOP limits
      - `oopCoinsurance` integer, required — Amount of coinsurance waived due to OOP limits
      - `oopDeductible` integer, required — Amount of deductible waived due to OOP limits
    - `status` 'UNKNOWN' | 'ESTIMATE' | 'FINALIZED'
    - `paid` integer — The amount (USD cents) of patient responsibility that has been paid, equal to the sum of all Payments.
  - `tasks` TypeServicesServiceCreateV1ResponseTask[], required
    - `type` 'PATIENT_CONSENT' | 'PATIENT_INSURANCE' | 'PATIENT_ADDRESS' | 'SERVICE_LOCATION' | 'DATE_OF_SERVICE' | 'DUPLICATE_SERVICE_TYPE' | 'INVALID_INITIAL_SERVICE_TYPE' | 'REPLACE_NOTE' | 'UPDATE_NOTE' | 'TRIAGE' | 'COVERAGE' | 'PRIOR_AUTHORIZATION' | 'BILLING_TIME_LIMIT' | 'PROVIDER_NOT_ENROLLED' | 'NOTE_SIGNING_PROVIDER_MISMATCH' | 'THERAPY_DURATION' | 'MINIMUM_DURATION' | 'MISSING_INITIATING_VISIT' | 'MISSING_ASSESSMENT' | 'MISSING_TIME_SPENT_MINUTES' | 'PATIENT_CONSENT_EXPIRED' | 'INVALID_DATE_RANGE' | 'INSUFFICIENT_MONITORING_DATA' | 'MISMATCHED_ICD10' | 'BILLING_FREQUENCY_LIMIT' | 'PATIENT_RECONSENT' | 'PROVIDER_CHANGED', required
    - `memo` string
  - `claimStatus` 'CREATED' | 'IN_PROGRESS' | 'PAID' | 'DENIED'
  - `priorAuthorizationNumber` string
  - `cancellationReason` 'NO_SHOW'
  - `metadata` TypeServicesServiceCreateV1ResponseMetadata
    - `exampleKey` string

---

[API](https://skmtc.dev/usebridge/apis/api-reference.md) · [All operations](https://skmtc.dev/usebridge/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/usebridge/api-reference/revisions/811dbc81bcd5/schema)
