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

# Create Coding

> Creates a new coding analysis request from medical conversation text



## OpenAPI

````yaml POST /v1/codings
openapi: 3.1.0
info:
  title: Sully API
  description: >
    The Sully API is a robust platform designed to empower healthcare technology
    companies and Electronic Health Record (EHR) vendors by integrating advanced
    AI-driven clinical capabilities to help save healthcare providers (HCPs)
    time and make better decisions.


    ## V2 Audio Transcriptions


    The V2 Audio Transcriptions API provides enhanced audio transcription
    services using advanced AI models with improved accuracy and language
    support.


    ### Authentication


    The API uses API key authentication. You must include both:

    - `X-API-Key`: Your API key

    - `X-Account-Id`: Your account identifier


    ### Rate Limiting


    The API implements rate limiting to ensure fair usage. Rate limit
    information is returned in response headers:

    - `X-RateLimit-Limit`: Maximum requests allowed

    - `X-RateLimit-Remaining`: Remaining requests in current window

    - `X-RateLimit-Reset`: When the rate limit resets


    ### Audio File Support


    Supported audio formats:

    - WAV (audio/wav, audio/wave, audio/x-wav)

    - MP3 (audio/mpeg, audio/mp3)

    - FLAC (audio/flac)

    - OGG (audio/ogg)

    - WebM (audio/webm)

    - MP4 (audio/mp4)

    - M4A (audio/m4a)

    - AAC (audio/aac)

    - Opus (audio/opus)


    Maximum file size: 100MB


    ### Language Support


    The API supports multiple languages, including:

    - English (en, en-US) with medical-optimized transcription

    - Spanish (es), German (de), French (fr), Hindi (hi), Italian (it), Japanese
    (ja), Dutch (nl), Portuguese (pt), and Russian (ru)

    - Additional support for languages including Chinese, Korean, and others


    ### Processing


    V2 Transcriptions are processed asynchronously:

    1. Upload returns immediately with `pending` status

    2. Processing happens in the background

    3. Status updates to `processing`, then `completed` or `failed`

    4. Webhook notifications are sent when processing completes (if configured)


    ### Dictation


    V2 transcriptions support an optional `dictation` boolean field.

    When enabled, the transcript is formatted for dictation-style output.

    The default is `false`.
  version: 0.2.0
servers:
  - url: https://api.sully.ai
    description: Sully Production API
  - url: https://api-testing.sully.ai
    description: Sully Testing API
security:
  - apiKeyAuth: []
    accountIdAuth: []
tags:
  - name: Notes
    description: >-
      Operations for creating and managing clinical notes from medical
      encounters
  - name: Note Styles
    description: Operations for managing templates and formatting styles for clinical notes
  - name: Audio Transcriptions
    description: >-
      Operations for converting medical audio to text, including streaming
      capability
  - name: V2 Transcriptions
    description: >
      V2 Audio transcription operations with enhanced features


      The V2 Transcriptions API allows you to convert audio files to text using
      advanced AI models.

      Features include:

      - Multi-language support with specialized medical models

      - Speaker diarization (identifying different speakers)

      - Word-level timestamps and confidence scores

      - Automatic audio format conversion

      - Optional dictation-oriented transcript formatting

      - Asynchronous processing with webhook notifications
  - name: Utilities
    description: Utility operations for transforming and processing medical data
  - name: Codings
    description: >-
      Operations for medical coding analysis including ICD-10 and CPT code
      extraction
  - name: Macros
    description: >-
      Operations for detecting and expanding text macros in medical
      documentation
paths:
  /v1/codings:
    post:
      tags:
        - Codings
      summary: Create a new medical coding analysis
      description: Creates a new coding analysis request from medical conversation text
      operationId: createCodingAnalysis
      requestBody:
        description: Text content to analyze for medical coding
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateCodingPayload'
        required: true
      responses:
        '200':
          description: Coding analysis request created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateCodingResponse'
        '400':
          description: Invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    CreateCodingPayload:
      type: object
      required:
        - text
      properties:
        text:
          type: string
          description: Transcript text of the medical conversation to analyze
          example: >-
            [0:00] Doctor: Hi John, good to see you again. How've you been
            holding up?

            Patient: Hey doc. It's been alright, but I've been feeling kind of
            off the last few weeks.
    CreateCodingResponse:
      type: object
      description: >-
        Response containing the initial status of a newly created coding
        analysis request
      properties:
        data:
          type: object
          description: Data object containing the coding analysis metadata
          properties:
            id:
              type: string
              description: Unique identifier for the coding analysis request
              example: coding_EXAMPLE123456789
            status:
              type: string
              description: Status of the coding analysis request
              example: pending
              enum:
                - pending
                - processing
                - complete
                - failed
            created_at:
              type: string
              format: date-time
              description: Timestamp when the request was created
              example: '2025-05-08T15:07:54.984Z'
            updated_at:
              type: string
              format: date-time
              description: Timestamp when the request was last updated
              example: '2025-05-08T15:07:54.984Z'
    Error:
      required:
        - error
        - message
      type: object
      properties:
        error:
          type: integer
          format: int32
        message:
          type: string
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
    accountIdAuth:
      type: apiKey
      in: header
      name: X-ACCOUNT-ID

````