Certifyos V2/provider API

The v2/provider API from Certifyos — 14 operation(s) for v2/provider.

OpenAPI Specification

certifyos-v2-provider-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: CertifyOS V2/provider API
  description: ''
  contact: {}
servers:
- url: https://ng-api-production.certifyos.com
  description: Production
- url: https://ng-api-stg.certifyos.com/
  description: Staging (Test Data)
tags:
- name: v2/provider
paths:
  /v2/provider:
    post:
      operationId: ProviderV2Controller_create
      summary: Create Provider
      description: Add a provider to the organization
      parameters:
      - name: organization-id
        in: header
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateProviderDtoV2'
      responses:
        '201':
          description: The record has been successfully created.
          content:
            application/json:
              schema:
                type: object
                properties:
                  provider_id:
                    type: string
                    example: sfas12345
                  is_created:
                    type: boolean
                    example: false
        '400':
          description: Bad request because the wrong parameters are provided in the request body.
        '401':
          description: Unauthorized if authorization token is not provided or invalid.
        '403':
          description: Forbidden if user access is not right.
      tags:
      - v2/provider
      security:
      - BearerAuth: []
    get:
      operationId: ProviderV2Controller_findOne
      summary: Retrieve all available information for a provider.
      description: "Fetches comprehensive details about a provider, \n      including optional related data such as credentialing workflows, \n      all sections data (state-licenses, board certifications, dea, etc.), \n      signed URLs for supporting documents/ attachments, verifier info, group info, and \n      sanction items based on the provided query parameters."
      parameters:
      - name: organization-id
        in: header
        schema:
          type: string
      - name: npi
        required: false
        in: query
        schema:
          type: string
      - name: external_id
        required: false
        in: query
        schema:
          type: string
      - name: provider_id
        required: false
        in: query
        schema:
          type: string
      - name: includeCredentialingWorkflows
        required: true
        in: query
        description: Include credentialing workflows with PSV url.
        schema:
          default: true
          type: boolean
      - name: includeFullData
        required: true
        in: query
        description: Include full data from every section.
        schema:
          default: true
          type: boolean
      - name: signUrls
        required: true
        in: query
        description: Sign Document URLs for immediate access.
        schema:
          default: true
          type: boolean
      - name: includeVerified
        required: true
        in: query
        description: Included VerifiedBy User info.
        schema:
          default: true
          type: boolean
      - name: includeGroupInfo
        required: true
        in: query
        description: Include group info.
        schema:
          default: false
          type: boolean
      - name: includeSanctionItems
        required: true
        in: query
        description: Include sanction items.
        schema:
          default: false
          type: boolean
      responses:
        '200':
          description: Provider Details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProviderV2ResponseDto'
        '401':
          description: Unauthorized if authorization token is not provided or invalid.
        '403':
          description: Forbidden if user access is not right.
        '404':
          description: Provider was not found
      tags:
      - v2/provider
      security:
      - BearerAuth: []
  /v2/provider/{providerId}/attested-data:
    post:
      operationId: ProviderV2Controller_createAttestedProviderData
      summary: Save attested provider data
      parameters:
      - name: organization-id
        in: header
        schema:
          type: string
      - name: providerId
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAttestedProviderDataDto'
      responses:
        '201':
          description: The record has been successfully created.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
        '400':
          description: Bad request because the wrong parameters are provided in the request body.
        '401':
          description: Unauthorized if authorization token is not provided or invalid.
        '403':
          description: Forbidden if user access is not right.
      tags:
      - v2/provider
      security:
      - BearerAuth: []
    get:
      operationId: ProviderV2Controller_getttestedProviderData
      summary: Fetch attested provider data
      parameters:
      - name: organization-id
        in: header
        schema:
          type: string
      - name: providerId
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateAttestedProviderDataDto'
        '400':
          description: Bad request because the wrong parameters are provided in the request body.
        '401':
          description: Unauthorized if authorization token is not provided or invalid.
        '403':
          description: Forbidden if user access is not right.
      tags:
      - v2/provider
      security:
      - BearerAuth: []
  /v2/provider/{providerId}/attested-data/documents:
    post:
      operationId: ProviderV2Controller_uploadProviderDocuments
      summary: Upload Provider Attested Data Document
      parameters:
      - name: organization-id
        in: header
        schema:
          type: string
      - name: providerId
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CreateAttestedProviderDocumentDto'
      responses:
        '201':
          description: The record has been successfully created.
        '400':
          description: Bad request.
        '401':
          description: Unauthorized if authorization token is not provided or invalid.
        '403':
          description: Forbidden if user access is not right.
        '404':
          description: Resource not found.
      tags:
      - v2/provider
      security:
      - BearerAuth: []
  /v2/provider/{providerId}/supporting-documents/{supportingDocumentId}/signed-url:
    get:
      operationId: ProviderV2Controller_getDocumentSignedUrl
      summary: Retrieve signed url of a given supporting-document id.
      description: "Retrieves a signed URL for the specified supporting document ID associated with the provider. \n      The signed URL provides secure, temporary access to the document and remains valid for 10 minutes."
      parameters:
      - name: organization-id
        in: header
        schema:
          type: string
      - name: providerId
        required: true
        in: path
        schema:
          type: string
      - name: supportingDocumentId
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: Signed URL
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized if authorization token is not provided or invalid.
        '403':
          description: Forbidden if user access is not right.
        '404':
          description: "Signed URL was not found because of the following reasons:\n\n      1. Provider was not found.\n\n      2. Supporting document with the id was not found."
      tags:
      - v2/provider
      security:
      - BearerAuth: []
  /v2/provider/{providerId}/survey-responses:
    get:
      operationId: ProviderV2Controller_findAllSurveyResponses
      summary: Lists all provider survey responses in an organization
      parameters:
      - name: organization-id
        in: header
        schema:
          type: string
      - name: providerId
        required: true
        in: path
        schema:
          type: string
      - name: offset
        required: false
        in: query
        description: The starting index for pagination, specifying how many records to skip.
        schema:
          minimum: 0
          default: 0
          type: number
      - name: limit
        required: false
        in: query
        description: The maximum number of records to retrieve in a single request.
        schema:
          default: 10
          type: number
      - name: version
        required: false
        in: query
        description: Version of the desired survey response
        schema:
          type: number
      responses:
        '200':
          description: Survey responses
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                  count:
                    type: number
        '401':
          description: Unauthorized if authorization token is not provided or invalid.
        '403':
          description: Forbidden if user access is not right.
      tags:
      - v2/provider
      security:
      - BearerAuth: []
  /v2/provider/{providerId}/outreaches:
    get:
      operationId: ProviderV2Controller_findAllOutreaches
      summary: Lists all provider email outreaches in an organization
      parameters:
      - name: organization-id
        in: header
        schema:
          type: string
      - name: providerId
        required: true
        in: path
        schema:
          type: string
      - name: offset
        required: false
        in: query
        description: The starting index for pagination, specifying how many records to skip.
        schema:
          minimum: 0
          default: 0
          type: number
      - name: limit
        required: false
        in: query
        description: The maximum number of records to retrieve in a single request.
        schema:
          default: 10
          type: number
      responses:
        '200':
          description: List of provider email outreaches
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProviderOutreachResponseDto'
        '401':
          description: Unauthorized if authorization token is not provided or invalid.
        '403':
          description: Forbidden if user access is not right.
      tags:
      - v2/provider
      security:
      - BearerAuth: []
  /v2/provider/{providerId}/caqh-data:
    get:
      operationId: ProviderV2Controller_findProviderCaqhData
      summary: Retrieve CAQH data for a provider
      description: Returns the CAQH (Council for Affordable Quality Healthcare) data for the specified provider. This data includes provider credentialing and demographic information as stored in CAQH.
      parameters:
      - name: organization-id
        in: header
        schema:
          type: string
      - name: providerId
        required: true
        in: path
        description: The unique identifier of the provider whose CAQH data is to be retrieved.
        schema:
          type: string
      responses:
        '200':
          description: CAQH Data for the provider.
          content:
            application/json:
              schema:
                type: object
                properties:
                  practitionerInformation:
                    type: object
                    additionalProperties: false
                    properties:
                      caqhProviderId:
                        type: integer
                      firstName:
                        type: string
                      middleName:
                        type: string
                      lastName:
                        type: string
                      suffix:
                        type: string
                      gender:
                        type: string
                      birthDate:
                        type: string
                        format: date-time
                      ssn:
                        type: string
                      personalEmail:
                        type: string
                      personalFaxNumber:
                        type: string
                      primaryEmail:
                        type: string
                      ethnicity:
                        type: string
                      raceEthnicity:
                        type: array
                        items:
                          type: object
                          additionalProperties: false
                          properties:
                            raceEthnicityLevel1:
                              type: string
                            raceEthnicityLevel2:
                              type: array
                              items:
                                type: object
                                additionalProperties: false
                                properties:
                                  raceEthnicityLevel2Name:
                                    type: string
                      languagesSpoken:
                        type: array
                        items:
                          type: object
                          additionalProperties: false
                          properties:
                            name:
                              type: string
                      birthCountry:
                        type: string
                      primaryPracticeState:
                        type: string
                      otherPracticeState:
                        type: array
                        items:
                          type: string
                      mailingAddress:
                        type: object
                        additionalProperties: false
                        properties:
                          address1:
                            type: string
                          address2:
                            type: string
                          city:
                            type: string
                          state:
                            type: string
                          zipCode:
                            type: string
                          country:
                            type: string
                      homePhoneNumber:
                        type: string
                      practiceSetting:
                        type: string
                      citizenshipCountry:
                        type: string
                      workPermitStatus:
                        type: string
                      usWorkEligibleFlag:
                        type: boolean
                      visaNumber:
                        type: string
                      practitionerType:
                        type: object
                        additionalProperties: false
                        properties:
                          name:
                            type: string
                      homeAddress:
                        type: object
                        additionalProperties: false
                        properties:
                          address1:
                            type: string
                          address2:
                            type: string
                          city:
                            type: string
                          state:
                            type: string
                          zipCode:
                            type: string
                          country:
                            type: string
                  practitionerProfileDetail:
                    type: object
                    additionalProperties: false
                    properties:
                      practitionerStatus:
                        type: object
                        additionalProperties: false
                        properties:
                          name:
                            type: string
                      lastAttestationDate:
                        type: string
                        format: date-time
                      attestId:
                        type: string
                      practitionerStatusDate:
                        type: string
                        format: date-time
                  healthPlanPractitionerDetail:
                    type: object
                    additionalProperties: false
                    properties:
                      proViewRosteredOnDate:
                        type: string
                        format: date-time
                      practitionerAuthorizationFlag:
                        type: boolean
                      practitionerAuthorizationDate:
                        type: string
                        format: date-time
                      practitionerLastRecredentialDate:
                        type: string
                        format: date-time
                      practitionerNextRecredentialDate:
                        type: string
                        format: date-time
                  practitionerProfessionalId:
                    type: array
                    items:
                      type: object
                      additionalProperties: false
                      properties:
                        practitionerLicense:
                          type: array
                          items:
                            type: object
                            additionalProperties: false
                            properties:
                              licenseState:
                                type: string
                              licenseNumber:
                                type: string
                              issueDate:
                                type: string
                                format: date-time
                              expirationDate:
                                type: string
                                format: date-time
                              currentlyPracticeInStateFlag:
                                type: boolean
                              licenseCategory:
                                type: string
                              licenseType:
                                type: object
                                additionalProperties: false
                                properties:
                                  name:
                                    type: string
                              licenseStatus:
                                type: object
                                additionalProperties: false
                                properties:
                                  name:
                                    type: string
                        practitionerNpi:
                          type: object
                          additionalProperties: false
                          properties:
                            npiNumber:
                              type: string
                            npiValidatedFlag:
                              type: boolean
                            npiAvailableFlag:
                              type: boolean
                        practitionerCds:
                          type: array
                          items:
                            type: object
                            additionalProperties: false
                            properties:
                              cdsNumber:
                                type: string
                              cdsState:
                                type: string
                              issueDate:
                                type: string
                                format: date-time
                              expirationDate:
                                type: string
                                format: date-time
                        practitionerDea:
                          type: array
                          items:
                            type: object
                            additionalProperties: false
                            properties:
                              deaNumber:
                                type: string
                              deaState:
                                type: string
                              issueDate:
                                type: string
                                format: date-time
                              expirationDate:
                                type: string
                                format: date-time
                              deaLicenseUnlimitedFlag:
                                type: boolean
                              deaApplicationSubmitDate:
                                type: string
                                format: date-time
                        practitionerMedicare:
                          type: array
                          items:
                            type: object
                            additionalProperties: false
                            properties:
                              medicareNumber:
                                type: string
                              medicareState:
                                type: string
                        practitionerMedicaid:
                          type: array
                          items:
                            type: object
                            additionalProperties: false
                            properties:
                              medicaidNumber:
                                type: string
                              medicaidState:
                                type: string
                        practitionerEcfmg:
                          type: array
                          items:
                            type: object
                            additionalProperties: false
                            properties:
                              ecfmgNumber:
                                type: string
                              ecfmgIssueDate:
                                type: string
                                format: date-time
                              ecfmgExpirationDate:
                                type: string
                                format: date-time
                        ecfmgAvailableFlag:
                          type: boolean
                        upinAvailableFlag:
                          type: boolean
                        upin:
                          type: string
                        deaAvailableFlag:
                          type: boolean
                        medicareParticipationFlag:
                          type: boolean
                        medicaidParticipationFlag:
                          type: boolean
                        modifiedAt:
                          type: string
                          format: date-time
                        createdAt:
                          type: string
                          format: date-time
                  practitionerEducation:
                    type: array
                    items:
                      type: object
                      additionalProperties: false
                      properties:
                        graduateType:
                          type: object
                          additionalProperties: false
                          properties:
                            name:
                              type: string
                        professionalSchoolFlag:
                          type: boolean
                        practitionerProfessionalSchool:
                          type: array
                          items:
                            type: object
                            additionalProperties: false
                            properties:
                              institutionName:
                                type: object
                                additionalProperties: false
                                properties:
                                  name:
                                    type: string
                              degree:
                                type: object
                                additionalProperties: false
                                properties:
                                  name:
                                    type: string
                              address:
                                type: object
                                additionalProperties: false
                                properties:
                                  address1:
                                    type: string
                                  address2:
                                    type: string
                                  city:
                                    type: string
                                  state:
                                    type: string
                                  zipCode:
                                    type: string
                                  country:
                                    type: string
                              institutionPhoneNumber:
                                type: string
                              certificateAwarded:
                                type: string
                              startDate:
                                type: string
                                format: date-time
                              endDate:
                                type: string
                                format: date-time
                              completionFlag:
                                type: boolean
                              completionDate:
                                type: string
                                format: date-time
                              incompleteReason:
                                type: string
                  practitionerSpecialExperienceAndTraining:
                    type: object
                    additionalProperties: false
                    properties:
                      adolescents:
                        type: boolean
                      angerManagement:
                        type: boolean
                      anxiety:
                        type: boolean
                      attentionDeficitHyperactivityDisorder:
                        type: boolean
                      autismSpectrumDisorders:
                        type: boolean
                      bipolarDisorder:
                        type: boolean
                      blindnessOrVisualImpairment:
                        type: boolean
                      children:
                        type: boolean
                      childWelfare:
                        type: boolean
                      chronicIllness:
                        type: boolean
                      cooccurringDisorders:
                        type: boolean
                      createdAt:
                        type: string
                        format: date-time
                      deafness:
                        type: boolean
                      depression:
                        type: boolean
                      dialecticalBehavioralTherapy:
                        type: boolean
                      genderIdentityDisorder:
                        type: boolean
                      genderNonConformity:
                        type: boolean
                      geriatricBehavioralHealth:
                        type: boolean
                      groupTherapy:
                        type: boolean
                      hivAIDS:
                        type: boolean
                      homelessness:
                        type: boolean
                      lesbianGayBisexual:
                        type: boolean
                      marriageAndFamilyTherapy:
                        type: boolean
                      medicalIllnessAndTherapy:
                        type: boolean
                      medicationManagementAndTherapy:
                        type: boolean
                      militaryVeterans:
                        type: boolean
                      modifiedAt:
                        type: string
                        format: date-time
                      neuropsychologicalTestingAdolescents:
                        type: boolean
                      neuropsychologicalTestingChildren:
                        type: boolean
                      obsessiveCompulsiveDisorder:
                        type: boolean
                      other:
                        type: string
                      peopleWithDisabilities:
                        type: boolean
                      physicalDisabilities:
                        type: boolean
                      playTherapy:
                        type: boolean
                      postpartumDepressionAndOrPsychosis:
                        type: boolean
                      psychologicalTestingAdolescents:
                        type: boolean
                      psychologicalTestingChildren:
                        type: boolean
                      resourceAuthorization:
                        type: object
                        additionalProperties: false
                        properties:
                          message:
                            type: string
                          resource:
                            type: string
                          statusCode:
                            type: string
                      seriousMentalIllness:
                        type: boolean
                      sleepDisorders:
                        type: boolean
                      substanceAbuse:
                        type: boolean
                      transgender:
                        type: boolean
                      trauma:
                        type: boolean
                  practitionerTraining:
                    type: array
                    items:
                      type: object
                      additionalProperties: false
                      properties:
                        practitionerOtherTraining:
                          type: array
                          items:
                            type: object
                            additionalProperties: false
                            properties:
                              otherTrainingSpecialty:
                                type: object
                                additionalProperties: false
                                properties:
                                  name:
                                    type: string
                        practitionerPreceptorshipFlag:
                          type: boolean
                        practitionerFellowship:
                          type: array
                          items:
                            type: object
                            additionalProperties: false
                            properties:
                              institutionName:
                                type: object
                                additionalProperties: false
                                properties:
                                  name:
                                    type: string
                              affiliatedUniversity:
                                type: string
                              startDate:
                                type: string
                                format: date-time
                              endDat

# --- truncated at 32 KB (189 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/certifyos/refs/heads/main/openapi/certifyos-v2-provider-api-openapi.yml