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

# Subida de archivo Base64

> - Soporta codificación Base64 y formatos Data URL
- Identifica automáticamente los tipos de archivo y categoriza el almacenamiento
- Devuelve URLs de archivo accesibles y enlaces de descarga
- Los archivos expirarán después de 72 horas
- La cuota actual del usuario es limitada. Las subidas fallarán cuando se agote la cuota. Guarda localmente si necesitas almacenamiento persistente

**Nota:**
La URL base de la API de subida de archivos es `https://files-api.evolink.ai`



## OpenAPI

````yaml es/api-manual/file-series/upload-base64.json POST /api/v1/files/upload/base64
openapi: 3.1.0
info:
  title: API de subida de archivo Base64
  description: Cargar archivos al servidor de archivos mediante codificación Base64
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://files-api.evolink.ai
    description: Subida de archivo por flujo
security:
  - bearerAuth: []
tags:
  - name: URL de acceso al archivo
    description: Archivo subido exitosamente
paths:
  /api/v1/files/upload/base64:
    post:
      tags:
        - URL de acceso al archivo
      summary: Subida de archivo Base64
      description: >-
        - Soporta codificación Base64 y formatos Data URL

        - Identifica automáticamente los tipos de archivo y categoriza el
        almacenamiento

        - Devuelve URLs de archivo accesibles y enlaces de descarga

        - Los archivos expirarán después de 72 horas

        - La cuota actual del usuario es limitada. Las subidas fallarán cuando
        se agote la cuota. Guarda localmente si necesitas almacenamiento
        persistente


        **Nota:**

        La URL base de la API de subida de archivos es
        `https://files-api.evolink.ai`
      operationId: uploadFileBase64
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Base64UploadRequest'
            examples:
              base64_upload:
                summary: Subida de archivo Base64
                value:
                  base64_data: data:image/png;base64,iVBORw0KGgo...
      responses:
        '200':
          description: FileImageSource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FileUploadResponse'
components:
  schemas:
    Base64UploadRequest:
      type: object
      required:
        - base64_data
      properties:
        base64_data:
          type: string
          description: >-
            Datos de archivo codificados en Base64


            **Formatos compatibles:**

            - Formato Data URL: `data:image/png;base64,iVBORw0KGgo...`

            - Codificación Base64 pura: `iVBORw0KGgo...`


            **Nota:**

            - Máximo `1` imagen por solicitud

            - Actualmente solo se admite la subida de archivos en formatos:
            `image/jpeg`, `image/png`, `image/gif`, `image/webp`
          example: data:image/png;base64,iVBORw0KGgo...
        upload_path:
          type: string
          description: >-
            Ruta de subida personalizada


            **Nota:**

            - Si no se especifica, el sistema categorizará automáticamente según
            el tipo de archivo
          example: avatars
        file_name:
          type: string
          description: >-
            Nombre de archivo personalizado


            **Nota:**

            - Si no se especifica, el sistema generará automáticamente un nombre
            de archivo único
          example: avatar.png
    FileUploadResponse:
      type: object
      properties:
        success:
          type: boolean
          description: Si la solicitud fue exitosa
          example: true
        code:
          type: integer
          description: Código de estado de respuesta
          example: 200
        msg:
          type: string
          description: Mensaje de respuesta
          example: FileImageSource
        data:
          $ref: '#/components/schemas/FileData'
    FileData:
      type: object
      properties:
        file_id:
          type: string
          description: Identificador único de archivo
          example: file_abc123
        file_name:
          type: string
          description: Nombre del archivo almacenado
          example: avatar.png
        original_name:
          type: string
          description: Nombre de archivo original
          example: avatar.png
        file_size:
          type: integer
          description: Ruta de almacenamiento del archivo
          example: 2048
        mime_type:
          type: string
          description: |-
            Tipo MIME del archivo

            **Tipos compatibles**:

            **Imagen**:
            - `image/jpeg`, `image/png`
            - Tamaño máximo por imagen: 10 MB

            **Audio**:
            - `audio/mp3`
            - Tamaño máximo por archivo: 10 MB
            - Duración recomendada: no más de 10 minutos

            **Video**:
            - `video/mp4`
            - Tamaño máximo por archivo: 50 MB
            - Duración recomendada: no más de 180 segundos

            **Documento**:
            - `application/pdf`
            - Tamaño máximo por archivo: 20 MB
          example: image/png
        upload_path:
          type: string
          description: APIs relacionadas con la subida de archivos
          example: avatars
        file_url:
          type: string
          format: uri
          description: >-
            Datos binarios del archivo


            **Nota:**

            - Subir mediante formato form-data

            - El sistema identificará automáticamente el tipo de archivo

            - Máximo `1` imagen por solicitud

            - Actualmente solo se admite la subida de archivos en formatos:
            `image/jpeg`, `image/png`, `image/gif`, `image/webp`
          example: https://files.evolink.ai/avatars/avatar.png
        download_url:
          type: string
          format: uri
          description: Tiempo de expiración del archivo (formato ISO 8601)
          example: https://files.evolink.ai/api/v1/files/download/file_abc123
        upload_time:
          type: string
          format: date-time
          description: Hora de carga (formato ISO 8601)
          example: '2025-10-09T00:00:00+08:00'
        expires_at:
          type: string
          format: date-time
          description: Tamaño del archivo (bytes)
          example: '2025-10-12T00:00:00+08:00'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ##Todas las APIs requieren autenticación Bearer Token##


        **Obtener API Key:**


        Visita la [Página de gestión de API
        Key](https://evolink.ai/dashboard/keys) para obtener tu API Key


        **Agregar al encabezado de la solicitud:**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```

````