Create Provider
Creates a new provider record. Providers must be created before they can be enrolled with payers.
/providers
This is a beta endpoint. We may make backwards incompatible changes.
This endpoint allows you to create a provider record with the details required for transaction enrollment.
- Call this endpoint with the provider's details.
- The endpoint returns the created provider record, including the provider
id
, which you'll need when creating enrollment requests.
You can now add the provider to one or more transaction enrollment requests.
All providers you create through this endpoint are available on the Providers page for you to review and manage.
Contacts
You can add one or more contacts to a provider record. This is where the payer will send communications about the enrollment, if needed.
- The provider's name and address should match exactly what the payer has on file. Some payers reject enrollment requests with addresses that don't match their records.
- However, you may want to set the phone number or email to your own contact details. Do this when you want the payer to contact you about the enrollment instead of the provider directly.
A Stedi API Key for authentication.
Body
The provider's National Provider Identifier (NPI). 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}$
The type of tax ID. Can be either an EIN
- Employer Identification Number, or an SSN
- Social Security Number.
EIN
SSN
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}$
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.
- Minimum length:
5
The contact information for the provider. This is where the payer will send communications about the enrollment, if needed.
- Either
organizationName
orfirstName
andlastName
are required. - The name and address should match exactly what the payer has on file for the provider. Some payers reject enrollment requests with addresses that don't match their records.
- If you're submitting enrollment requests on a provider's behalf, you may want to set the phone number and email to your own contact details. Do this when you want the payer to contact you about the enrollment status instead of the provider directly.
Response
CreateProvider 200 response
A unique identifier Stedi assigns to this provider.
The date and time Stedi created the provider record.
- Format:
date-time
The date and time Stedi last updated the provider record.
- Format:
date-time
The provider's National Provider Identifier (NPI). 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}$
The type of tax ID. Can be either an EIN
- Employer Identification Number, or an SSN
- Social Security Number.
EIN
SSN
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}$
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.
- Minimum length:
5
The contact information for the provider. This is where the payer will send communications about the enrollment, if needed.
- Either
organizationName
orfirstName
andlastName
are required. - The name and address should match exactly what the payer has on file for the provider. Some payers reject enrollment requests with addresses that don't match their records.
- If you're submitting enrollment requests on a provider's behalf, you may want to set the phone number and email to your own contact details. Do this when you want the payer to contact you about the enrollment status instead of the provider directly.
curl --request POST \ --url "https://enrollments.us.stedi.com/2024-09-01/providers" \ --header "Authorization: <api_key>" \ --header "Content-Type: application/json" \ --data '{ "name": "BDQ Dental Inc", "npi": "1999999992", "taxIdType": "EIN", "taxId": "555123456", "contacts": [ { "firstName": "Bob", "lastName": "Dentist", "email": "bob@fortdental.center", "phone": "555-123-2135", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" }, { "firstName": "Tom", "lastName": "Dentist", "email": "tom@fortdental.center", "phone": "555-123-2133", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" } ] }'
const body = JSON.stringify({ "name": "BDQ Dental Inc", "npi": "1999999992", "taxIdType": "EIN", "taxId": "555123456", "contacts": [ { "firstName": "Bob", "lastName": "Dentist", "email": "bob@fortdental.center", "phone": "555-123-2135", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" }, { "firstName": "Tom", "lastName": "Dentist", "email": "tom@fortdental.center", "phone": "555-123-2133", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" } ]})fetch("https://enrollments.us.stedi.com/2024-09-01/providers", { headers: { "Authorization": "<api_key>" }, body})
package mainimport ( "fmt" "net/http" "io/ioutil" "strings")func main() { url := "https://enrollments.us.stedi.com/2024-09-01/providers" body := strings.NewReader(`{ "name": "BDQ Dental Inc", "npi": "1999999992", "taxIdType": "EIN", "taxId": "555123456", "contacts": [ { "firstName": "Bob", "lastName": "Dentist", "email": "bob@fortdental.center", "phone": "555-123-2135", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" }, { "firstName": "Tom", "lastName": "Dentist", "email": "tom@fortdental.center", "phone": "555-123-2133", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" } ] }`) req, _ := http.NewRequest("POST", url, body) req.Header.Add("Authorization", "<api_key>") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body))}
import requestsurl = "https://enrollments.us.stedi.com/2024-09-01/providers"body = { "name": "BDQ Dental Inc", "npi": "1999999992", "taxIdType": "EIN", "taxId": "555123456", "contacts": [ { "firstName": "Bob", "lastName": "Dentist", "email": "bob@fortdental.center", "phone": "555-123-2135", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" }, { "firstName": "Tom", "lastName": "Dentist", "email": "tom@fortdental.center", "phone": "555-123-2133", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" } ]}response = requests.request("POST", url, json = body, headers = { "Authorization": "<api_key>", "Content-Type": "application/json"})print(response.text)
import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;import java.net.http.HttpResponse.BodyHandlers;import java.time.Duration;import java.net.http.HttpRequest.BodyPublishers;var body = BodyPublishers.ofString("""{ "name": "BDQ Dental Inc", "npi": "1999999992", "taxIdType": "EIN", "taxId": "555123456", "contacts": [ { "firstName": "Bob", "lastName": "Dentist", "email": "bob@fortdental.center", "phone": "555-123-2135", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" }, { "firstName": "Tom", "lastName": "Dentist", "email": "tom@fortdental.center", "phone": "555-123-2133", "streetAddress1": "123 Some Str", "city": "Chevy Chase", "zipCode": "20814", "state": "MD" } ]}""");HttpClient client = HttpClient.newBuilder() .connectTimeout(Duration.ofSeconds(10)) .build();HttpRequest.Builder requestBuilder = HttpRequest.newBuilder() .uri(URI.create("https://enrollments.us.stedi.com/2024-09-01/providers")) .header("Content-Type", "application/json") .header("Authorization", "<api_key>") .POST(body) .build();try { HttpResponse<String> response = client.send(requestBuilder.build(), BodyHandlers.ofString()); System.out.println("Status code: " + response.statusCode()); System.out.println("Response body: " + response.body());} catch (Exception e) { e.printStackTrace();}
{
"message": "string",
"fieldList": [
{
"path": "string",
"message": "string"
}
]
}
{
"message": "string",
"code": "string"
}
{
"message": "string",
"code": "string"
}
{
"message": "string",
"code": "string"
}
{
"message": "string",
"code": "string"
}