Stedi Providers API
The Providers API from Stedi — 2 operation(s) for providers.
The Providers API from Stedi — 2 operation(s) for providers.
openapi: 3.0.3
info:
contact:
email: healthcare@stedi.com
license:
name: Proprietary
url: https://stedi.com
title: Stedi Healthcare Claims Claim acknowledgments Providers API
version: '2025-03-07'
servers:
- description: Production
url: https://claims.us.stedi.com/2025-03-07
security:
- httpApiKeyAuth: []
tags:
- name: Providers
paths:
/providers:
get:
description: Lists providers with optional filtering and pagination.
operationId: ListProviders
parameters:
- description: The maximum number of elements to return in a page. If not specified, the default is 100.
in: query
name: pageSize
schema:
description: The maximum number of elements to return in a page. If not specified, the default is 100.
maximum: 500
minimum: 1
type: number
- description: The `nextPageToken` value from a previous response. You can use this to get the next page of results. If not set, Stedi returns the first page of results.
in: query
name: pageToken
schema:
description: The `nextPageToken` value from a previous response. You can use this to get the next page of results. If not set, Stedi returns the first page of results.
maxLength: 1024
minLength: 1
type: string
- description: 'Filter for providers with properties matching a query string. You can provide all or part of a provider name, NPI, or tax ID. The search is case-insensitive and supports fuzzy matching.
For example, providing `?filter=OS` returns providers with names containing `os` (such as `Joseph`).'
in: query
name: filter
schema:
description: 'Filter for providers with properties matching a query string. You can provide all or part of a provider name, NPI, or tax ID. The search is case-insensitive and supports fuzzy matching.
For example, providing `?filter=OS` returns providers with names containing `os` (such as `Joseph`).'
type: string
- description: Filter for providers with NPIs matching any value in this list.
explode: true
in: query
name: providerNpis
schema:
description: Filter for providers with NPIs matching any value in this list.
items:
description: The provider NPI.
type: string
type: array
style: form
- description: Filter for providers with tax IDs matching any value in this list.
explode: true
in: query
name: providerTaxIds
schema:
description: Filter for providers with tax IDs matching any value in this list.
items:
description: The provider tax ID.
type: string
type: array
style: form
responses:
'200':
content:
application/json:
examples:
ListProviders_example1:
description: ''
summary: List Providers
value:
items:
- id: 10334e76-f073-4b5d-8984-81d8e5107857
name: BDQ Dental Inc
npi: '1999999992'
taxId: '555123456'
taxIdType: EIN
- id: 10234e76-f067-4b5d-8984-81d8e5107123
name: Example Medical Associates
npi: '1999999984'
taxId: '100100111'
taxIdType: EIN
schema:
$ref: '#/components/schemas/ListProvidersResponseContent'
description: ListProviders 200 response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationExceptionResponseContent'
description: ValidationException 400 response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedExceptionResponseContent'
description: UnauthorizedException 401 response
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedExceptionResponseContent'
description: AccessDeniedException 403 response
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/QuotaExceededExceptionResponseContent'
description: QuotaExceededException 429 response
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalFailureExceptionResponseContent'
description: InternalFailureException 500 response
'503':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailableExceptionResponseContent'
description: ServiceUnavailableException 503 response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/GatewayTimeoutExceptionResponseContent'
description: GatewayTimeoutException 504 response
tags:
- Providers
post:
description: Creates a new provider record. Providers must be created before they can be enrolled with payers.
operationId: CreateProvider
requestBody:
content:
application/json:
examples:
CreateProvider_example1:
description: ''
summary: Create Provider
value:
contacts:
- city: Chevy Chase
email: bob@fortdental.center
firstName: Bob
lastName: Dentist
phone: '5551232135'
state: MD
streetAddress1: 123 Some Str
zipCode: '20814'
- city: Chevy Chase
email: tom@fortdental.center
firstName: Tom
lastName: Dentist
phone: '5551232133'
state: MD
streetAddress1: 123 Some Str
zipCode: '20814'
name: BDQ Dental Inc
npi: '1999999992'
taxId: '555123456'
taxIdType: EIN
schema:
$ref: '#/components/schemas/CreateProviderRequestContent'
required: true
responses:
'200':
content:
application/json:
examples:
CreateProvider_example1:
description: ''
summary: Create Provider
value:
contacts:
- city: Chevy Chase
email: bob@fortdental.center
firstName: Bob
lastName: Dentist
organizationName: ''
phone: '5551232135'
state: MD
streetAddress1: 123 Some Str
zipCode: '20814'
- city: Chevy Chase
email: tom@fortdental.center
firstName: Tom
lastName: Dentist
organizationName: ''
phone: '5551232133'
state: MD
streetAddress1: 123 Some Str
zipCode: '20814'
createdAt: '2024-11-18T17:39:52.406Z'
id: 10334e76-f073-4b5d-8984-81d8e5107857
name: BDQ Dental Inc
npi: '1999999992'
taxId: '555123456'
taxIdType: EIN
updatedAt: '2024-11-18T17:39:52.406Z'
schema:
$ref: '#/components/schemas/CreateProviderResponseContent'
description: CreateProvider 200 response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationExceptionResponseContent'
description: ValidationException 400 response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedExceptionResponseContent'
description: UnauthorizedException 401 response
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedExceptionResponseContent'
description: AccessDeniedException 403 response
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundExceptionResponseContent'
description: ResourceNotFoundException 404 response
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/QuotaExceededExceptionResponseContent'
description: QuotaExceededException 429 response
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalFailureExceptionResponseContent'
description: InternalFailureException 500 response
'503':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailableExceptionResponseContent'
description: ServiceUnavailableException 503 response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/GatewayTimeoutExceptionResponseContent'
description: GatewayTimeoutException 504 response
tags:
- Providers
/providers/{providerId}:
delete:
description: Deletes a provider record. Providers can only be deleted if they have no associated enrollments. This operation is idempotent.
operationId: DeleteProvider
parameters:
- description: The Stedi-assigned identifier for the provider you want to delete.
examples:
DeleteProvider_example1:
description: ''
summary: Delete Provider
value: 10334e76-f073-4b5d-8984-81d8e5107857
in: path
name: providerId
required: true
schema:
description: The Stedi-assigned identifier for the provider you want to delete.
type: string
responses:
'200':
description: DeleteProvider 200 response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationExceptionResponseContent'
description: ValidationException 400 response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedExceptionResponseContent'
description: UnauthorizedException 401 response
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedExceptionResponseContent'
description: AccessDeniedException 403 response
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundExceptionResponseContent'
description: ResourceNotFoundException 404 response
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/QuotaExceededExceptionResponseContent'
description: QuotaExceededException 429 response
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalFailureExceptionResponseContent'
description: InternalFailureException 500 response
'503':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailableExceptionResponseContent'
description: ServiceUnavailableException 503 response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/GatewayTimeoutExceptionResponseContent'
description: GatewayTimeoutException 504 response
tags:
- Providers
get:
description: Retrieves a provider record by its ID. This operation returns the complete provider details including contact information.
operationId: GetProvider
parameters:
- description: The unique ID Stedi assigned to the provider when it was created in the system.
examples:
GetProvider_example1:
description: ''
summary: Get Provider
value: 10334e76-f073-4b5d-8984-81d8e5107857
in: path
name: providerId
required: true
schema:
description: The unique ID Stedi assigned to the provider when it was created in the system.
type: string
responses:
'200':
content:
application/json:
examples:
GetProvider_example1:
description: ''
summary: Get Provider
value:
contacts:
- city: Chevy Chase
email: bob@fortdental.center
firstName: Bob
lastName: Dentist
organizationName: ''
phone: '5551234567'
state: MD
streetAddress1: 123 Some Str
zipCode: '20814'
- city: Chevy Chase
email: tom@fortdental.center
firstName: Tom
lastName: Dentist
organizationName: ''
phone: '5551234568'
state: MD
streetAddress1: 123 Some Str
zipCode: '20814'
createdAt: '2024-11-18T17:39:52.406Z'
id: 10334e76-f073-4b5d-8984-81d8e5107857
name: BDQ Dental Inc
npi: '1999999992'
taxId: '555123456'
taxIdType: EIN
updatedAt: '2024-11-18T17:39:52.406Z'
schema:
$ref: '#/components/schemas/GetProviderResponseContent'
description: GetProvider 200 response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationExceptionResponseContent'
description: ValidationException 400 response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedExceptionResponseContent'
description: UnauthorizedException 401 response
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedExceptionResponseContent'
description: AccessDeniedException 403 response
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundExceptionResponseContent'
description: ResourceNotFoundException 404 response
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/QuotaExceededExceptionResponseContent'
description: QuotaExceededException 429 response
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalFailureExceptionResponseContent'
description: InternalFailureException 500 response
'503':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailableExceptionResponseContent'
description: ServiceUnavailableException 503 response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/GatewayTimeoutExceptionResponseContent'
description: GatewayTimeoutException 504 response
tags:
- Providers
post:
description: Updates an existing provider's information. Note that NPI and tax ID cannot be changed after creation.
operationId: UpdateProvider
parameters:
- description: The Stedi-assigned identifier for the provider you want to update.
examples:
UpdateProvider_example1:
description: ''
summary: Update Provider
value: 10334e76-f073-4b5d-8984-81d8e5107857
in: path
name: providerId
required: true
schema:
description: The Stedi-assigned identifier for the provider you want to update.
type: string
requestBody:
content:
application/json:
examples:
UpdateProvider_example1:
description: ''
summary: Update Provider
value:
contacts:
- city: A City
email: bob@fortdental.center
firstName: Test
lastName: Tester
phone: '5551234567'
state: WA
streetAddress1: 123 Some Str
zipCode: '12345'
name: TEST Updated Dental Inc
schema:
$ref: '#/components/schemas/UpdateProviderRequestContent'
required: true
responses:
'200':
content:
application/json:
examples:
UpdateProvider_example1:
description: ''
summary: Update Provider
value:
contacts:
- city: A City
email: bob@fortdental.center
firstName: Test
lastName: Tester
organizationName: ''
phone: '5551234567'
state: WA
streetAddress1: 123 Some Str
zipCode: '12345'
createdAt: '2024-11-18T17:39:52.406Z'
id: 10334e76-f073-4b5d-8984-81d8e5107857
name: TEST Updated Dental Inc
npi: '1999999999'
taxId: '111222333'
taxIdType: EIN
updatedAt: '2024-11-19T19:24:33.246Z'
schema:
$ref: '#/components/schemas/UpdateProviderResponseContent'
description: UpdateProvider 200 response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationExceptionResponseContent'
description: ValidationException 400 response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedExceptionResponseContent'
description: UnauthorizedException 401 response
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedExceptionResponseContent'
description: AccessDeniedException 403 response
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundExceptionResponseContent'
description: ResourceNotFoundException 404 response
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/QuotaExceededExceptionResponseContent'
description: QuotaExceededException 429 response
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalFailureExceptionResponseContent'
description: InternalFailureException 500 response
'503':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailableExceptionResponseContent'
description: ServiceUnavailableException 503 response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/GatewayTimeoutExceptionResponseContent'
description: GatewayTimeoutException 504 response
tags:
- Providers
components:
schemas:
ProviderSummary:
description: Summary information for a provider, typically used in list operations.
properties:
id:
description: A unique identifier Stedi assigns to this provider internally.
type: string
name:
description: The provider's business name. This is typically the provider's practice name, such as `Dental Associates, LLC`, but it can also be the provider's first and last name.
type: string
npi:
description: The provider's [National Provider Identifier (NPI)](https://npiregistry.cms.hhs.gov/search).
type: string
taxId:
description: The provider's tax ID, as specified by `taxIdType`. This identifier is formatted without any separators, such as dashes or spaces. For example 111-22-3333 is represented as `111223333`.
type: string
taxIdType:
$ref: '#/components/schemas/TaxIdType'
description: The type of tax ID. Can be either an `EIN` - Employer Identification Number, or an `SSN` - Social Security Number.
required:
- id
- name
- npi
type: object
ServiceUnavailableExceptionResponseContent:
description: The server cannot handle the request due to technical reasons.
properties:
code:
description: Error classification code
type: string
message:
description: Human-readable error message
type: string
required:
- message
type: object
GetProviderResponseContent:
description: Output containing the provider details.
properties:
contacts:
description: 'The contact information for the provider. These contacts appear as prepopulated options for contact information when creating enrollment requests for this provider in the Stedi portal. They aren''t automatically added to enrollment requests.
These contacts should specify where payers should send communications about the enrollment, if needed.'
items:
$ref: '#/components/schemas/ProviderContact'
type: array
createdAt:
description: The date and time Stedi created the provider record.
format: date-time
type: string
id:
description: A unique identifier Stedi assigns to this provider.
type: string
name:
description: The provider's business name. This is typically the provider's practice name, such as `Dental Associates, LLC`, but it can also be the provider's first and last name.
minLength: 5
type: string
npi:
description: The provider's [National Provider Identifier (NPI)](https://npiregistry.cms.hhs.gov/search). This is a 10-digit number that is unique to the provider.
pattern: ^[0-9]{10}$
type: string
taxId:
description: The provider's tax ID, as specified by `taxIdType`. This identifier is formatted without any separators, such as dashes or spaces. For example 111-22-3333 is represented as `111223333`.
pattern: ^\d{9}$
type: string
taxIdType:
$ref: '#/components/schemas/TaxIdType'
description: The type of tax ID. Can be either an `EIN` - Employer Identification Number, or an `SSN` - Social Security Number.
updatedAt:
description: The date and time Stedi last updated the provider record.
format: date-time
type: string
required:
- id
- name
- npi
type: object
ValidationExceptionResponseContent:
description: 'A standard error for input validation failures.
This should be thrown by services when a member of the input structure
falls outside of the modeled or documented constraints.'
properties:
fieldList:
description: 'A list of specific failures encountered while validating the input.
A member can appear in this list more than once if it failed to satisfy multiple constraints.'
items:
$ref: '#/components/schemas/ValidationExceptionField'
type: array
message:
description: A summary of the validation failure.
type: string
required:
- message
type: object
InternalFailureExceptionResponseContent:
description: The server response when an unexpected error occurred while processing request.
properties:
code:
description: Error classification code
type: string
message:
description: Human-readable error message
type: string
required:
- message
type: object
QuotaExceededExceptionResponseContent:
description: The server response for the usage plan quota exceeded error.
properties:
code:
description: Error classification code
type: string
message:
description: Human-readable error message
type: string
required:
- message
type: object
AccessDeniedExceptionResponseContent:
description: The server response for authorization failure.
properties:
code:
description: Error classification code
type: string
message:
description: Human-readable error message
type: string
required:
- message
type: object
UpdateProviderResponseContent:
description: Output containing the updated provider details.
properties:
contacts:
description: 'The contact information for the provider. These contacts appear as prepopulated options for contact information when creating enrollment requests for this provider in the Stedi portal. They aren''t automatically added to enrollment requests.
These contacts should specify where payers should send communications about the enrollment, if needed.'
items:
$ref: '#/components/schemas/ProviderContact'
type: array
createdAt:
description: The date and time Stedi created the provider record.
format: date-time
type: string
id:
description: A unique identifier Stedi assigns to this provider.
type: string
name:
description: The provider's business name. This is typically the provider's practice name, such as `Dental Associates, LLC`, but it can also be the provider's first and last name.
minLength: 5
type: string
npi:
description: 'The provider''s [National Provider Identifier (NPI)](https://npiregistry.cms.hhs.gov/search). This is a 10-digit number that is unique to the provider.
Each provider record must have a unique `npi` and `taxId` combination. For example, you can create two provider records with the same `npi` as long as they have different values for `taxId`.'
pattern: ^[0-9]{10}$
type: string
taxId:
description: 'The provider''s tax ID, as specified by `taxIdType`. This identifier has to be provided without any separators, such as dashes or spaces. For example 111-22-3333 is invalid but `111223333` is valid.
Each provider record must have a unique `npi` and `taxId` combination. For example, you can create two provider records with the same `taxId` as long as they have different values for `npi`.'
pattern: ^\d{9}$
type: string
taxIdType:
$ref: '#/components/schemas/TaxIdType'
description: The type of tax ID. Can be either an `EIN` - Employer Identification Number, or an `SSN` - Social Security Number.
updatedAt:
description: The date and time Stedi last updated the provider record.
format: date-time
type: string
required:
- id
- name
- npi
type: object
CreateProviderResponseContent:
description: Output containing the created provider details.
properties:
contacts:
description: 'The contact information for the provider. These contacts appear as prepopulated options for contact information when creating enrollment requests for this provider in the Stedi portal. They aren''t automatically added to enrollment requests.
These contacts should specify where payers should send communications about the enrollment, if needed.'
items:
$ref: '#/components/schemas/ProviderContact'
type: array
createdAt:
description: The date and time Stedi created the provider record.
format: date-time
type: string
id:
description: A unique identifier Stedi assigns to this provider.
type: string
name:
description: The provider's business name. This is typically the provider's practice name, such as `Dental Associates, LLC`, but it can also be the provider's first and last name.
minLength: 5
type: string
npi:
description: 'The provider''s [National Provider Identifier (NPI)](https://npiregistry.cms.hhs.gov/search). This is a 10-digit number that is unique to the provider.
Each provider record must have a unique `npi` and `taxId` combination. For example, you can create two provider records with the same `npi` as long as they have different values for `taxId`.'
pattern: ^[0-9]{10}$
type: string
taxId:
description: 'The provider''s tax ID, as specified by `taxIdType`. This identifier has to be provided without any separators, such as dashes or spaces. For example 111-22-3333 is invalid but `111223333` is valid.
Each provider record must have a unique `npi` and `taxId` combination. For example, you can create two provider records with the same `taxId` as long as they have different values for `npi`.'
pattern: ^\d{9}$
type: string
taxIdType:
$ref: '#/components/schemas/TaxIdType'
description: The type of tax ID. Can be either an `EIN` - Employer Identification Number, or an `SSN` - Social Security Number.
updatedAt:
description: The date and time Stedi last updated the provider record.
format: date-time
type: string
required:
- id
- name
- npi
type: object
ResourceNotFoundExceptionResponseContent:
description: The requested resource could not be found.
properties:
code:
description: Error classification code
type: string
message:
description: Human-readable error message
type: string
required:
- message
type: object
ListProvidersResponseContent:
description: Output containing a paginated list of providers.
properties:
items:
description: Details about every provider your organization has created within Stedi.
items:
$ref: '#/components/schemas/ProviderSummary'
type: array
nextPageToken:
description: Token that you can supply in subsequent requests to retrieve the next page of results. If not returned, there are no more results.
maxLength: 1024
minLength: 1
type: string
type: object
UpdateProviderRequestContent:
description: Input for UpdateProvider.
properties:
contacts:
description: "The contact information for the provider. These contacts appear as prepopulated options for contact information when creating enrollment requests fo
# --- truncated at 32 KB (41 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/stedi/refs/heads/main/openapi/stedi-providers-api-openapi.yml