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

# import from a URL

> Fetches media at a public URL into the library, original bytes, in one call: url for one file, items for up to 20. A batch answers per item, in order, and a failed item is a status in the list, not an error. Same size ceilings as uploads. Plus the item's lineage block when made_from was given.



## OpenAPI

````yaml /openapi.json post /uploads/import
openapi: 3.1.0
info:
  title: Eversince API
  version: '1'
  description: >-
    Every Eversince tool as one POST call, plus the routes beside them: the tool
    list, account and keys, uploads, webhooks and models. The prose is at
    https://docs.eversince.ai.
servers:
  - url: https://eversince.ai/api/v1
security:
  - bearer: []
tags:
  - name: Discovery
    description: The tool list, the same on the MCP server, the REST API and the CLI.
  - name: Workspace
    description: Jobs, balances, settings, templates, skills and the overview.
  - name: Library
    description: >-
      Items, search, import, reading media, comments, boards, calendars, the
      brand kit and public links.
  - name: Timeline
    description: 'Video editing: timelines, clips, captions, sound, language and rendering.'
  - name: Canvas
    description: 'Still editing: canvases, slides, layers and rendering.'
  - name: Generation
    description: Image, video and audio generation, upscaling, cutouts and models.
  - name: Research
    description: 'What platforms publish: pulling and keeping posts.'
  - name: Account
    description: Balances, keys, workspaces and script sessions.
  - name: Uploads
    description: Files into the library by presigned upload or by URL.
  - name: Webhooks
    description: Job results posted to a URL as they complete.
  - name: Models
    description: Generation models and cost estimates.
paths:
  /uploads/import:
    post:
      tags:
        - Uploads
      summary: import from a URL
      description: >-
        Fetches media at a public URL into the library, original bytes, in one
        call: url for one file, items for up to 20. A batch answers per item, in
        order, and a failed item is a status in the list, not an error. Same
        size ceilings as uploads. Plus the item's lineage block when made_from
        was given.
      operationId: import_from_url
      parameters:
        - $ref: '#/components/parameters/WorkspaceId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                url:
                  type: string
                  description: One file.
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      url:
                        type: string
                      file_name:
                        type: string
                      description:
                        type: string
                      made_from:
                        type: object
                        additionalProperties: true
                    required:
                      - url
                  description: Several files, up to 20.
                file_name:
                  type: string
                description:
                  type: string
                folder_id:
                  type: string
                  description: An id or a path.
                workspace_id:
                  type: string
                enrich:
                  type: boolean
                made_from:
                  type: object
                  additionalProperties: true
      responses:
        '200':
          description: A duplicate, or a batch.
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      upload_id:
                        type: string
                      type:
                        type: string
                      url:
                        type: string
                      file_name:
                        type: string
                      duplicate:
                        const: true
                    required:
                      - upload_id
                      - duplicate
                    description: A file the library already held.
                  - type: object
                    properties:
                      results:
                        type: array
                        items:
                          type: object
                          properties:
                            url:
                              type: string
                            status:
                              type: string
                              enum:
                                - imported
                                - duplicate
                                - failed
                            upload_id:
                              type: string
                            type:
                              type: string
                            file_name:
                              type: string
                            item_url:
                              type: string
                            error:
                              type: string
                              description: On failed.
                          required:
                            - url
                            - status
                      summary:
                        type: object
                        properties:
                          imported:
                            type: number
                          duplicates:
                            type: number
                          failed:
                            type: number
                    required:
                      - results
                      - summary
                    description: A batch.
        '201':
          description: Imported.
          content:
            application/json:
              schema:
                type: object
                properties:
                  upload_id:
                    type: string
                  type:
                    type: string
                  url:
                    type: string
                  file_name:
                    type: string
                required:
                  - upload_id
                  - type
        '400':
          description: 'validation_error: the message names the field.'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      status:
                        type: number
                    required:
                      - code
                      - message
                      - status
                required:
                  - error
        '401':
          description: 'unauthorized: the credential did not check out.'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      status:
                        type: number
                    required:
                      - code
                      - message
                      - status
                required:
                  - error
        '429':
          description: 'rate_limited: Retry-After says when.'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      status:
                        type: number
                    required:
                      - code
                      - message
                      - status
                required:
                  - error
        '500':
          description: internal_error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      status:
                        type: number
                    required:
                      - code
                      - message
                      - status
                required:
                  - error
components:
  parameters:
    WorkspaceId:
      name: x-workspace-id
      in: header
      required: false
      schema:
        type: string
      description: The workspace this one call acts in, when it is not the key's own.
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: >-
        An API key (es_live_…) from Settings, under API keys, or an OAuth access
        token.

````