vee3-io Files API

The files API from vee3-io — 6 operation(s) for files.

Operations 6

POST /v1/files/download-file Download file #
GET /v1/files/uploaded-files List uploaded files #
POST /v1/files/upload-file Upload file #
POST /v1/files/delete-file Delete file #
POST /v1/files/move-file Move file #
POST /v1/files/extend-file Extend file retention #

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/vee3-io:vee3-io-files-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

vee3-io-files-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Vee3 Io Files API
  version: 0.1.0
  description: 'Operations tagged files across 2 of this provider''s published API definitions: vee3-io.json, vee3-io-openapi.json. Each path carries the servers of the definition it was published in.'
tags:
- name: Files
paths:
  /v1/files/download-file:
    post:
      tags:
      - Files
      summary: Download file
      description: Reserve a direct download for a previously uploaded file.
      operationId: download_file_v1_files_download_file_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DownloadFileRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DownloadFileResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
  /v1/files/uploaded-files:
    get:
      tags:
      - Files
      summary: List uploaded files
      description: List files currently uploaded for the authenticated Vee3 account.
      operationId: list_uploaded_files_v1_files_uploaded_files_get
      security:
      - HTTPBearer: []
      parameters:
      - name: folder
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 200
          - type: 'null'
          title: Folder
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListUploadedFilesResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/files/upload-file:
    post:
      tags:
      - Files
      summary: Upload file
      description: Reserve a direct upload slot for a local file that is too large for MCP base64.
      operationId: upload_file_v1_files_upload_file_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UploadFileRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UploadFileResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
  /v1/files/delete-file:
    post:
      tags:
      - Files
      summary: Delete file
      description: Delete a previously uploaded file from account storage.
      operationId: delete_file_v1_files_delete_file_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteFileRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteFileResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
  /v1/files/move-file:
    post:
      tags:
      - Files
      summary: Move file
      description: Move a stored upload to a new account-relative path.
      operationId: move_file_v1_files_move_file_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MoveFileRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MoveFileResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
  /v1/files/extend-file:
    post:
      tags:
      - Files
      summary: Extend file retention
      description: Extend how long a retained upload stays in storage.
      operationId: extend_file_v1_files_extend_file_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExtendFileRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExtendFileResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
components:
  schemas:
    UploadFileResult:
      properties:
        upload_code:
          type: string
          title: Upload Code
        upload_id:
          type: string
          title: Upload Id
        expires_at:
          type: string
          format: date-time
          title: Expires At
        max_bytes:
          type: integer
          title: Max Bytes
        retention_days:
          type: integer
          title: Retention Days
        existing_files:
          type: string
          title: Existing Files
        install_command:
          type: string
          title: Install Command
        command:
          type: string
          title: Command
        troubleshooting:
          type: string
          title: Troubleshooting
      type: object
      required:
      - upload_code
      - upload_id
      - expires_at
      - max_bytes
      - retention_days
      - existing_files
      - install_command
      - command
      - troubleshooting
      title: UploadFileResult
    MoveFileResult:
      properties:
        source_file_name:
          type: string
          title: Source File Name
        destination_file_name:
          type: string
          title: Destination File Name
      type: object
      required:
      - source_file_name
      - destination_file_name
      title: MoveFileResult
    DownloadFileRequest:
      properties:
        file_name:
          type: string
          maxLength: 255
          title: File Name
          description: Relative file name or path to download. Use files.list_uploaded_files to see available names.
      type: object
      required:
      - file_name
      title: DownloadFileRequest
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    DownloadFileResult:
      properties:
        download_code:
          type: string
          title: Download Code
        download_id:
          type: string
          title: Download Id
        expires_at:
          type: string
          format: date-time
          title: Expires At
        file_name:
          type: string
          title: File Name
        size_bytes:
          anyOf:
          - type: integer
          - type: 'null'
          title: Size Bytes
        content_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Content Type
        install_command:
          type: string
          title: Install Command
        command:
          type: string
          title: Command
        troubleshooting:
          type: string
          title: Troubleshooting
      type: object
      required:
      - download_code
      - download_id
      - expires_at
      - file_name
      - install_command
      - command
      - troubleshooting
      title: DownloadFileResult
    DeleteFileResult:
      properties:
        file_name:
          type: string
          title: File Name
      type: object
      required:
      - file_name
      title: DeleteFileResult
    DeleteFileRequest:
      properties:
        file_name:
          type: string
          maxLength: 255
          title: File Name
          description: Relative file name or path to delete. Use files.list_uploaded_files to see available names.
      type: object
      required:
      - file_name
      title: DeleteFileRequest
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    ExtendFileResult:
      properties:
        file_name:
          type: string
          title: File Name
        retained_until:
          type: string
          format: date-time
          title: Retained Until
        additional_retention_days:
          type: integer
          title: Additional Retention Days
        token_cost:
          type: integer
          title: Token Cost
        size_bytes:
          type: integer
          title: Size Bytes
      type: object
      required:
      - file_name
      - retained_until
      - additional_retention_days
      - token_cost
      - size_bytes
      title: ExtendFileResult
    UploadFileRequest:
      properties:
        file_name:
          type: string
          maxLength: 255
          title: File Name
          description: Desired file name or path for the uploaded file. Use folder/subfolder/.../file_name to organize files in folders. Extension is optional and is replaced based on detected file type. Do not use '..' or absolute paths.
        retention_days:
          anyOf:
          - type: integer
            maximum: 90.0
            minimum: 1.0
          - type: 'null'
          title: Retention Days
          description: How many days to keep the file after upload completes. Default 7. Billing uses size and this retention.
          default: 7
        existing_files:
          type: string
          enum:
          - stop
          - continue
          - replace
          title: Existing Files
          description: What to do when a stored file already uses the same name. 'stop' (default) fails on the first duplicate. 'continue' skips duplicates and keeps uploading remaining files. 'replace' overwrites duplicated stored files.
          default: stop
      type: object
      required:
      - file_name
      title: UploadFileRequest
    MoveFileRequest:
      properties:
        source_file_name:
          type: string
          maxLength: 255
          title: Source File Name
          description: Current relative file name or path. Use files.list_uploaded_files to see available names.
        destination_file_name:
          type: string
          maxLength: 255
          title: Destination File Name
          description: New relative file name or path. Must not already exist in account storage.
      type: object
      required:
      - source_file_name
      - destination_file_name
      title: MoveFileRequest
    ExtendFileRequest:
      properties:
        file_name:
          type: string
          maxLength: 255
          title: File Name
          description: Relative file name or path to extend. Use files.list_uploaded_files and choose a file that includes retained_until.
        additional_retention_days:
          type: integer
          maximum: 90.0
          minimum: 1.0
          title: Additional Retention Days
          description: Days to add to the file's retention schedule.
      type: object
      required:
      - file_name
      - additional_retention_days
      title: ExtendFileRequest
    UploadedFileSummary:
      properties:
        upload_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Upload Id
        file_name:
          type: string
          title: File Name
        content_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Content Type
        size_bytes:
          type: integer
          title: Size Bytes
        uploaded_at:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Uploaded At
        retained_until:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Retained Until
      type: object
      required:
      - file_name
      - size_bytes
      title: UploadedFileSummary
    ListUploadedFilesResult:
      properties:
        files:
          items:
            $ref: '#/components/schemas/UploadedFileSummary'
          type: array
          title: Files
      type: object
      title: ListUploadedFilesResult
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer
x-refined-from:
- vee3-io.json
- vee3-io-openapi.json