Beatra AI Uploads API

The uploads API from Beatra AI — 1 operation(s) for uploads.

Operations 1

POST /v1/uploads Single-shot upload (≤100MB) #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/beatra-ai:beatra-ai-uploads-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

beatra-ai-uploads-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Beatra Ai Uploads API
  version: 0.1.0
  description: 'Operations tagged uploads across 2 of this provider''s published API definitions: beatra-ai-api-openapi.json, beatra-ai-docs-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.beatra.ai
tags:
- name: Uploads
paths:
  /v1/uploads:
    post:
      tags:
      - Uploads
      summary: Single-shot upload (≤100MB)
      operationId: upload_v1_uploads_post
      parameters:
      - name: authorization
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Authorization
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Body_upload_v1_uploads_post'
      responses:
        '201':
          description: Upload accepted; artifact created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UploadResponse'
        '200':
          description: Content already exists; returns existing artifact
        '413':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Request Entity Too Large
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unprocessable Entity
      x-beatra:
        visibility: public
        group: uploads
        title: Uploads
        product_area: Uploads
        mode: sync
        lifecycle: preview
        release_state: preview
        customer_facing: true
        docs_order: 10
components:
  schemas:
    UploadResponse:
      properties:
        object:
          type: string
          const: upload
          title: Object
          default: upload
        artifact_id:
          type: string
          title: Artifact Id
        cdn_url:
          type: string
          title: Cdn Url
        mime_type:
          type: string
          title: Mime Type
        media_type:
          type: string
          enum:
          - image
          - video
          - audio
          title: Media Type
        size_bytes:
          type: integer
          title: Size Bytes
        width:
          anyOf:
          - type: integer
          - type: 'null'
          title: Width
        height:
          anyOf:
          - type: integer
          - type: 'null'
          title: Height
        duration_ms:
          anyOf:
          - type: integer
          - type: 'null'
          title: Duration Ms
        checksum_sha256:
          type: string
          title: Checksum Sha256
        created_at:
          type: string
          format: date-time
          title: Created At
      type: object
      required:
      - artifact_id
      - cdn_url
      - mime_type
      - media_type
      - size_bytes
      - checksum_sha256
      - created_at
      title: UploadResponse
      description: Returned by both /v1/uploads (201) and de-dup hit (200).
    ErrorResponse:
      properties:
        error:
          $ref: '#/components/schemas/ErrorBody'
      type: object
      required:
      - error
      title: ErrorResponse
    Body_upload_v1_uploads_post:
      properties:
        file:
          type: string
          contentMediaType: application/octet-stream
          title: File
        purpose:
          type: string
          enum:
          - media_input
          - reference_audio
          - voice_clone_source
          title: Purpose
          default: media_input
        media_type:
          anyOf:
          - type: string
            enum:
            - image
            - video
            - audio
          - type: 'null'
          title: Media Type
        metadata:
          anyOf:
          - type: string
          - type: 'null'
          title: Metadata
      type: object
      required:
      - file
      title: Body_upload_v1_uploads_post
    ErrorBody:
      properties:
        code:
          type: string
          title: Code
          description: Stable public error code
        type:
          type: string
          title: Type
          description: Broad SDK-friendly error family
        message:
          type: string
          title: Message
          description: Human-readable explanation
        retryable:
          type: boolean
          title: Retryable
          description: If true, retrying the exact same request may succeed
        details:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Details
          description: Code-specific structured info
        request_id:
          type: string
          title: Request Id
          description: Echo of X-Request-Id for support correlation
        param:
          anyOf:
          - type: string
          - type: 'null'
          title: Param
          description: JSON Pointer to offending field, if applicable
      type: object
      required:
      - code
      - type
      - message
      - retryable
      - request_id
      title: ErrorBody
x-refined-from:
- beatra-ai-api-openapi.json
- beatra-ai-docs-openapi.json