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

# Submit from public URL

> Submit an audio or video file for transcription using a publicly accessible URL.

<Info>
  Use this endpoint when your media file is already hosted at a public URL. For local files, use [Submit from local file](/api-reference/transcription/request-upload-url) instead.
</Info>

<Info>
  Processing is **asynchronous** — the API returns a `transcription_id` immediately. Use [Get Transcription Details](/api-reference/transcription/details) or webhooks to track completion.
</Info>

<Note>
  The `url` must be publicly accessible with no authentication required. The download has a **60-second timeout** — use a fast, stable URL.
</Note>

<Note>
  For supported formats, file size limits, and duration limits, see [Rate Limits & Quotas](/platform/rate-limits).
</Note>

<Note>
  `participant_id` and `evaluator_id` are optional. If provided, they must exist and belong to your account.
</Note>


## OpenAPI

````yaml api-reference/openapi-transcriptions.json POST /submit
openapi: 3.1.0
info:
  title: Heify API — Transcriptions
  description: Endpoints for submitting, retrieving, and managing Transcriptions.
  version: 1.0.0
servers:
  - url: https://api.heify.com
security:
  - apiKeyAuth: []
paths:
  /submit:
    post:
      summary: Submit from public URL
      description: >-
        Submits an audio or video file for transcription and processing using a
        publicly accessible URL. The transcription job is created and starts
        processing asynchronously — poll `/get-transcription` or use webhooks to
        track completion.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitUrlRequest'
            examples:
              SubmitViaUrl:
                summary: Submit audio from a public URL
                value:
                  configuration_id: a1b2c3d4-e5f6-7890-1234-567890abcdef
                  url: >-
                    https://s3.amazonaws.com/my-public-bucket/interviews/quarterly-review.mp3
                  name: Quarterly Sales Review
                  evaluator_id: 2abb5563-1234-5678-abcd-ef1234567890
      responses:
        '201':
          description: >-
            Transcription job created successfully. Processing has started
            asynchronously.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitResponse'
              examples:
                SuccessResponse:
                  value:
                    data:
                      message: Transcription created successfully
                      transcription_id: 1a2b3c4d-e5f6-7890-1234-567890abcdef
components:
  schemas:
    SubmitUrlRequest:
      type: object
      properties:
        configuration_id:
          type: string
          format: uuid
          description: The unique identifier of the configuration to use for processing.
        url:
          type: string
          format: uri
          description: >-
            A publicly accessible URL to the audio or video file to transcribe.
            Must require no authentication. Subject to a 60-second download
            timeout.
        name:
          type: string
          description: Optional custom name for the transcription job.
        participant_id:
          type: string
          format: uuid
          description: >-
            Optional. Link this transcription to a participant. Must exist and
            belong to your account.
        evaluator_id:
          type: string
          format: uuid
          description: >-
            Optional. Link this transcription to an evaluator. Must exist and
            belong to your account.
      required:
        - configuration_id
        - url
    SubmitResponse:
      type: object
      properties:
        data:
          type: object
          properties:
            message:
              type: string
              description: Confirmation message.
            transcription_id:
              type: string
              format: uuid
              description: The unique identifier for the newly created transcription job.
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````