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

# Upload an asset

> Upload a new asset (image, video, audio, or 3D model). Accepts multipart/form-data with a file and optional description. Maximum file size: 75MB.



## OpenAPI

````yaml https://api.krea.ai/openapi.json post /assets
openapi: 3.1.0
info:
  title: Krea API
  version: v1
servers:
  - url: https://api.krea.ai
    description: Krea API
security:
  - bearerAuth: []
tags:
  - name: General
    description: Core API operations including job management and billing information
  - name: Krea
    description: Krea-owned generation models including Krea 2
  - name: Assets
    description: >-
      Asset management endpoints for uploading and managing images, videos,
      audio files, and 3D models
  - name: Styles
    description: Style (LoRA) generation and management endpoints
  - name: Node Apps
    description: Executing custom node apps built in our nodes tool
  - name: Image
    description: Image generation endpoints
  - name: Image Enhance
    description: Image enhance endpoints
  - name: Video
    description: Video generation endpoints
  - name: Video Enhance
    description: Video enhance and upscale endpoints
  - name: 3D
    description: 3D model generation and export endpoints
paths:
  /assets:
    post:
      tags:
        - Assets
      summary: Upload an asset
      description: >-
        Upload a new asset (image, video, audio, or 3D model). Accepts
        multipart/form-data with a file and optional description. Maximum file
        size: 75MB.
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  description: >-
                    The file to upload (JPEG, PNG, WebP, HEIC, MP4, MOV, WebM,
                    GLB, WAV, MP3). Maximum size: 75MB.
                  type: string
                  format: binary
                description:
                  description: Optional description for the asset
                  type: string
              required:
                - file
      responses:
        '200':
          description: Asset uploaded successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                    pattern: >-
                      ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                  image_url:
                    type: string
                    format: uri
                  uploaded_at:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                  width:
                    anyOf:
                      - type: number
                      - type: 'null'
                  height:
                    anyOf:
                      - type: number
                      - type: 'null'
                  size_bytes:
                    anyOf:
                      - type: number
                      - type: 'null'
                  mime_type:
                    anyOf:
                      - type: string
                      - type: 'null'
                  description:
                    type: string
                required:
                  - id
                  - image_url
                  - uploaded_at
                  - width
                  - height
                  - size_bytes
                  - mime_type
                additionalProperties: false
        '400':
          description: Invalid file type or size
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
components:
  securitySchemes:
    bearerAuth:
      scheme: bearer
      bearerFormat: Bearer
      type: http

````