> ## Documentation Index
> Fetch the complete documentation index at: https://docs.silnahealth.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Prior Authorization

<Note>This endpoint supports idempotency keys</Note>


## OpenAPI

````yaml post /public/v1/prior-authorizations/
openapi: 3.0.2
info:
  title: Silna Public API
  version: '1.0'
servers:
  - url: https://app.silnahealth.com/api
security:
  - bearerAuth: []
paths:
  /public/v1/prior-authorizations/:
    post:
      tags:
        - V1PriorAuthorizationResource
      summary: Create Prior Authorization
      operationId: V1PriorAuthorizationResource.post
      parameters:
        - in: header
          name: idempotency-key
          required: false
          schema:
            type: string
            minLength: 1
            maxLength: 255
          description: >-
            Unique key to prevent duplicate requests. We support keys up to 255
            characters.
          example: 550e8400-e29b-41d4-a716-446655440000
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/V1PriorAuthorizationCreate'
        description: ''
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V1PriorAuthorizationCreateResponse'
          headers:
            X-RateLimit-Limit:
              schema:
                type: integer
                description: The maximum number of requests allowed in the time window
            X-RateLimit-Remaining:
              schema:
                type: integer
                description: The number of requests remaining in the current time window
            X-RateLimit-Reset:
              schema:
                type: integer
                description: The time when the rate limit will reset, in Unix timestamp
            Retry-After:
              schema:
                type: number
                description: The number of seconds to wait before making another request
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
          headers:
            X-RateLimit-Limit:
              schema:
                type: integer
                description: The maximum number of requests allowed in the time window
            X-RateLimit-Remaining:
              schema:
                type: integer
                description: The number of requests remaining in the current time window
            X-RateLimit-Reset:
              schema:
                type: integer
                description: The time when the rate limit will reset, in Unix timestamp
            Retry-After:
              schema:
                type: number
                description: The number of seconds to wait before making another request
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthenticationError'
          headers:
            X-RateLimit-Limit:
              schema:
                type: integer
                description: The maximum number of requests allowed in the time window
            X-RateLimit-Remaining:
              schema:
                type: integer
                description: The number of requests remaining in the current time window
            X-RateLimit-Reset:
              schema:
                type: integer
                description: The time when the rate limit will reset, in Unix timestamp
            Retry-After:
              schema:
                type: number
                description: The number of seconds to wait before making another request
        '404':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectNotFoundError'
          headers:
            X-RateLimit-Limit:
              schema:
                type: integer
                description: The maximum number of requests allowed in the time window
            X-RateLimit-Remaining:
              schema:
                type: integer
                description: The number of requests remaining in the current time window
            X-RateLimit-Reset:
              schema:
                type: integer
                description: The time when the rate limit will reset, in Unix timestamp
            Retry-After:
              schema:
                type: number
                description: The number of seconds to wait before making another request
        '429':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequestsError'
          headers:
            X-RateLimit-Limit:
              schema:
                type: integer
                description: The maximum number of requests allowed in the time window
            X-RateLimit-Remaining:
              schema:
                type: integer
                description: The number of requests remaining in the current time window
            X-RateLimit-Reset:
              schema:
                type: integer
                description: The time when the rate limit will reset, in Unix timestamp
            Retry-After:
              schema:
                type: number
                description: The number of seconds to wait before making another request
components:
  schemas:
    V1PriorAuthorizationCreate:
      properties:
        patient_plan_id:
          description: Patient Plan ID
          format: uuid
          title: Patient Plan Id
          type: string
        specialty:
          $ref: '#/components/schemas/PublicSpecialty'
          description: Specialty for the prior authorization
        authorization_type:
          $ref: '#/components/schemas/PriorAuthorizationType'
          description: >-
            Type of authorization. Note: The following specialties are
            constrained to specific authorization types: Psychological Testing:
            Assessment authorization, Amendment
        save_as_draft:
          default: false
          description: >-
            Whether to save as draft. Only available if prior auth management is
            enabled. Reach out to your Silna contact to turn it on.
          title: Save As Draft
          type: boolean
      required:
        - patient_plan_id
        - specialty
        - authorization_type
      title: V1PriorAuthorizationCreate
      type: object
      x-folder: public_api
    V1PriorAuthorizationCreateResponse:
      properties:
        id:
          description: ID of the created prior authorization
          format: uuid
          title: Id
          type: string
        status:
          $ref: '#/components/schemas/PublicPriorAuthorizationStatus'
          description: Status of the prior authorization
        required_data:
          $ref: '#/components/schemas/V1PriorAuthorizationRequiredData'
          description: Data required to complete the prior authorization request
      required:
        - id
        - status
        - required_data
      title: V1PriorAuthorizationCreateResponse
      type: object
      x-folder: public_api
    ValidationError:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          description: Human readable error message
      x-folder: null
    AuthenticationError:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          description: Human readable error message
        type:
          $ref: '#/components/schemas/PublicApiErrorType'
      x-folder: null
    ObjectNotFoundError:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          description: Human readable error message
      x-folder: null
    TooManyRequestsError:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          description: Human readable error message
      x-folder: null
    PublicSpecialty:
      type: string
      enum:
        - PHYSICAL_THERAPY
        - ABA_THERAPY
        - SPEECH_THERAPY
        - OCCUPATIONAL_THERAPY
        - PSYCHOLOGICAL_TESTING
        - HOME_HEALTH_CARE
        - HOSPICE
        - CARDIAC_REHABILITATION
        - INTENSIVE_CARDIAC_REHABILITATION
        - MENTAL_HEALTH
        - PRINCIPAL_ILLNESS_NAVIGATION
        - PRINCIPAL_CARE_MANAGEMENT
        - ADVANCED_PRIMARY_CARE_MODELS
        - PREVENTATIVE_HEALTH
        - PARTIAL_HOSPITALIZATION_PROGRAM
        - INTENSIVE_OUTPATIENT_PROGRAM
        - INTERVENTIONAL_RADIOLOGY
        - VASCULAR_SURGERY
        - INTERVENTIONAL_CARDIOLOGY
        - ORTHOPEDICS
        - CHIROPRACTIC
        - GYNECOLOGY
        - LONG_TERM_CARE
        - NUTRITIONAL_COUNSELING
        - PHYSICAL_MEDICINE
        - PULMONARY_REHABILITATION
        - INJECTABLE_SPECIALTY_MEDICATIONS
        - ALLERGY_TESTING
        - SKILLED_NURSING
        - RADIOLOGY
        - OTOLARYNGOLOGY
        - DURABLE_MEDICAL_EQUIPMENT
        - DERMATOLOGY
        - PROFESSIONAL_OFFICE_VISIT
      x-folder: specialty
    PriorAuthorizationType:
      type: string
      enum:
        - ASSESSMENT_AUTHORIZATION
        - INITIAL_AUTHORIZATION
        - CONCURRENT_AUTHORIZATION
        - AMENDMENT
      x-folder: prior_authorization
    PublicPriorAuthorizationStatus:
      type: string
      enum:
        - DATA_REQUESTED
        - DATA_RECEIVED
        - ALL_REQUIRED_DATA_RECEIVED
        - REQUESTED
        - TOO_EARLY_TO_SUBMIT
        - UNNECESSARY
        - AWAITING_PROVIDER
        - PENDING_PROVIDER_SUBMISSION_REVIEW
        - AWAITING_SILNA
        - APPROVED_TO_SUBMIT
        - SUBMITTED_TO_PAYOR
        - PAYOR_DENIED
        - PAYOR_DENIED_APPEALING
        - AWAITING_RESUBMISSION
        - RESUBMITTED_TO_PAYOR
        - PAYOR_APPROVED
        - DENIED_UNAPPEALED
        - PRELIMINARY_APPROVAL
        - PARTIALLY_APPROVED
        - WITHDRAWN
      x-folder: prior_authorization
    V1PriorAuthorizationRequiredData:
      properties:
        treatment_codes:
          $ref: '#/components/schemas/V1TreatmentCodesRequirement'
          description: Treatment codes requirements
        documents:
          $ref: '#/components/schemas/V1DocumentsRequirement'
          description: Document requirements
        clinician_npi:
          $ref: '#/components/schemas/V1ClinicianNpiRequirement'
          description: Clinician NPI requirements
        start_date:
          $ref: '#/components/schemas/V1StartDateRequirement'
          description: Start date requirements
      required:
        - treatment_codes
        - documents
        - clinician_npi
        - start_date
      title: V1PriorAuthorizationRequiredData
      type: object
      x-folder: public_api
    PublicApiErrorType:
      type: string
      enum:
        - AUTH_INVALID_REQUEST_HEADER
        - AUTH_INVALID_CREDENTIALS
      x-folder: null
    V1TreatmentCodesRequirement:
      properties:
        required:
          description: Whether treatment codes are required
          title: Required
          type: boolean
        standards:
          description: Standard for the treatment codes
          items:
            $ref: '#/components/schemas/TreatmentCodeStandard'
          title: Standards
          type: array
      required:
        - required
        - standards
      title: V1TreatmentCodesRequirement
      type: object
      x-folder: public_api
    V1DocumentsRequirement:
      properties:
        required:
          description: Whether documents are required
          title: Required
          type: boolean
        items:
          description: List of document requirements
          items:
            $ref: '#/components/schemas/V1DocumentRequirement'
          title: Items
          type: array
      required:
        - required
      title: V1DocumentsRequirement
      type: object
      x-folder: public_api
    V1ClinicianNpiRequirement:
      properties:
        required:
          description: Whether clinician NPI is required
          title: Required
          type: boolean
      required:
        - required
      title: V1ClinicianNpiRequirement
      type: object
      x-folder: public_api
    V1StartDateRequirement:
      properties:
        required:
          description: Whether start date is required
          title: Required
          type: boolean
      required:
        - required
      title: V1StartDateRequirement
      type: object
      x-folder: public_api
    TreatmentCodeStandard:
      type: string
      enum:
        - CPT
        - HCPCS
        - CALIFORNIA_REGIONAL_CENTER
        - ICD_10
      x-folder: codes
    V1DocumentRequirement:
      properties:
        document_type:
          $ref: '#/components/schemas/PriorAuthorizationUploadDocumentType'
          description: Type of document required
        required:
          description: Whether this document is required
          title: Required
          type: boolean
        document_intelligence:
          $ref: '#/components/schemas/V1DocumentIntelligence'
          description: Document intelligence information
      required:
        - document_type
        - required
        - document_intelligence
      title: V1DocumentRequirement
      type: object
      x-folder: public_api
    PriorAuthorizationUploadDocumentType:
      type: string
      enum:
        - AUTHORIZATION_FORM
        - PROGRESS_NOTE
        - DIAGNOSIS_REPORT
        - REFERRAL
        - ASSESSMENT_EVALUATION
        - CANCELLATION_LETTER
        - TREATMENT_PLAN_PLAN_OF_CARE
        - ATTENDANCE_LOGS
        - INDIVIDUALIZED_EDUCATION_PROGRAM
        - CHANGE_OF_PROVIDER_FORM
        - TELEHEALTH_ATTESTATION
        - ABAS
        - VINELAND
        - SRS_2
        - PDDBI
        - PSI_SIPA
      x-folder: prior_authorization
    V1DocumentIntelligence:
      properties:
        validation_supported:
          description: Whether document validation is supported for this document type
          title: Validation Supported
          type: boolean
      required:
        - validation_supported
      title: V1DocumentIntelligence
      type: object
      x-folder: public_api
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````