> ## 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.

# organize items

> Library structure in one batch: create, rename, describe, move and delete folders, move items into folders, label and unlabel, star, hide, rename and delete labels, group variations, stack versions, and create typed fields. Parts run in a fixed order, folders and labels made before anything is filed or labelled, so one call can create a path and move into it; create_folders takes whole paths and makes every missing segment. A folder is where an item is filed, a label is a workspace-wide mark people filter by, a tag (update_items) is a searchable word on the item, a field is a typed value. group_variations makes items peers of one concept, all visible; stack_versions folds one behind another so the library shows the current one. A board is a field, so moving a card is update_items. Each entry stands alone: the response says what every operation changed and skipped, and failed names the ones that did not run. Free.



## OpenAPI

````yaml /openapi.json post /tools/organize_items
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:
  /tools/organize_items:
    post:
      tags:
        - Library
      summary: organize items
      description: >-
        Library structure in one batch: create, rename, describe, move and
        delete folders, move items into folders, label and unlabel, star, hide,
        rename and delete labels, group variations, stack versions, and create
        typed fields. Parts run in a fixed order, folders and labels made before
        anything is filed or labelled, so one call can create a path and move
        into it; create_folders takes whole paths and makes every missing
        segment. A folder is where an item is filed, a label is a workspace-wide
        mark people filter by, a tag (update_items) is a searchable word on the
        item, a field is a typed value. group_variations makes items peers of
        one concept, all visible; stack_versions folds one behind another so the
        library shows the current one. A board is a field, so moving a card is
        update_items. Each entry stands alone: the response says what every
        operation changed and skipped, and failed names the ones that did not
        run. Free.
      operationId: organize_items
      parameters:
        - $ref: '#/components/parameters/IdempotencyKey'
        - $ref: '#/components/parameters/WorkspaceId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                moves:
                  type: array
                  items:
                    type: object
                    properties:
                      refs:
                        type: array
                        items:
                          type: string
                          description: An item ref, item id, or the job id that made it.
                      into_folder:
                        type: string
                        description: >-
                          Folder path or id; create_folders in the same call may
                          make it.
                    required:
                      - refs
                      - into_folder
                labels:
                  type: array
                  items:
                    type: object
                    properties:
                      refs:
                        type: array
                        items:
                          type: string
                          description: An item ref, item id, or the job id that made it.
                      label:
                        type: string
                        description: >-
                          Label name, created on demand: a workspace-wide mark
                          people filter by.
                    required:
                      - refs
                      - label
                unlabel:
                  description: >-
                    Take a label off these items. The label itself stays, on
                    everything else that carries it.
                  type: array
                  items:
                    type: object
                    properties:
                      refs:
                        type: array
                        items:
                          type: string
                          description: An item ref, item id, or the job id that made it.
                      label:
                        type: string
                        description: Label name or id.
                    required:
                      - refs
                      - label
                favorite:
                  type: array
                  items:
                    type: object
                    properties:
                      refs:
                        type: array
                        items:
                          type: string
                          description: An item ref, item id, or the job id that made it.
                      'on':
                        type: boolean
                    required:
                      - refs
                      - 'on'
                hide:
                  description: >-
                    Take items off the feed, or put them back. Nothing else
                    changes: the files, their folders and every search are
                    untouched, and search_library with hidden: true finds them
                    again.
                  type: array
                  items:
                    type: object
                    properties:
                      refs:
                        type: array
                        items:
                          type: string
                          description: An item ref, item id, or the job id that made it.
                      'on':
                        type: boolean
                    required:
                      - refs
                      - 'on'
                create_folders:
                  type: array
                  items:
                    type: string
                rename_folders:
                  description: Rename in place; everything inside moves with it.
                  type: array
                  items:
                    type: object
                    properties:
                      folder:
                        type: string
                        description: Folder path or id.
                      name:
                        type: string
                    required:
                      - folder
                      - name
                describe_folders:
                  description: >-
                    Say what a folder is for, in a line. It comes back with the
                    folder everywhere it is read, so the next session opens the
                    job already knowing it. Empty text clears it.
                  type: array
                  items:
                    type: object
                    properties:
                      folder:
                        type: string
                        description: Folder path or id.
                      description:
                        type: string
                    required:
                      - folder
                      - description
                update_labels:
                  description: >-
                    Rename or recolor a label. Items keep it; the assignment
                    rides on the label, not its wording.
                  type: array
                  items:
                    type: object
                    properties:
                      label:
                        type: string
                      name:
                        type: string
                      color:
                        type: string
                    required:
                      - label
                delete_labels:
                  description: >-
                    Delete a label. It comes off every item that carried it; no
                    item is deleted or changed otherwise.
                  type: array
                  items:
                    type: string
                    description: Label name or id.
                move_folders:
                  description: Reparent a folder; everything inside comes with it.
                  type: array
                  items:
                    type: object
                    properties:
                      folder:
                        type: string
                      into:
                        anyOf:
                          - type: string
                          - type: 'null'
                        description: Destination folder, or null for the root.
                    required:
                      - folder
                      - into
                delete_folders:
                  description: >-
                    Delete a folder and the folders inside it. Nothing filed in
                    them is deleted; every item moves to the top level, and the
                    response says how many.
                  type: array
                  items:
                    type: string
                    description: Folder path or id.
                group_variations:
                  description: >-
                    Each entry groups its refs as one variation set (peers, no
                    parent). To add items to an existing set, include any
                    current member, and the sets merge.
                  type: array
                  items:
                    type: object
                    properties:
                      refs:
                        minItems: 2
                        type: array
                        items:
                          type: string
                          description: An item ref, item id, or the job id that made it.
                    required:
                      - refs
                ungroup_variations:
                  description: Remove these items from their variation sets.
                  type: array
                  items:
                    type: string
                    description: An item ref, item id, or the job id that made it.
                stack_versions:
                  description: >-
                    Stack an item as a version of another: v2 of a cut, a
                    re-render, a corrected export. A stack shows one item with
                    its history behind it, where a variation set shows every
                    peer side by side.
                  type: array
                  items:
                    type: object
                    properties:
                      ref:
                        type: string
                        description: The new version.
                      version_of:
                        type: string
                        description: >-
                          The item it is a version of. That one anchors the
                          stack.
                      set_current:
                        description: Make this the one the stack shows. Default false.
                        type: boolean
                    required:
                      - ref
                      - version_of
                unstack_versions:
                  description: >-
                    Take these out of their version stack; each stands on its
                    own again.
                  type: array
                  items:
                    type: string
                    description: An item ref, item id, or the job id that made it.
                set_current_version:
                  description: Make each of these the version its stack shows.
                  type: array
                  items:
                    type: string
                    description: An item ref, item id, or the job id that made it.
                create_fields:
                  description: >-
                    Create typed columns on the workspace. A date field is what
                    a calendar view reads, a select is what a board reads.
                    update_items sets values by name and refuses a name that
                    does not exist, so the field is made here first.
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        description: >-
                          What the column is called. Unique across the
                          workspace; a board is a field too, so a name already
                          taken fails.
                      type:
                        type: string
                        enum:
                          - text
                          - number
                          - date
                          - select
                          - multi_select
                          - checkbox
                          - url
                      options:
                        description: 'select and multi_select only: the values it can take.'
                        type: array
                        items:
                          type: string
                      description:
                        description: >-
                          What the field is for; read wherever the field is
                          shown.
                        type: string
                    required:
                      - name
                      - type
                context:
                  description: 'Optional: one sentence shown to the user beside this action.'
                  type: string
                  maxLength: 600
      responses:
        '200':
          description: >-
            Done, or a job started for work that runs longer (follow it with
            get_jobs).
          content:
            application/json:
              schema:
                type: object
                required:
                  - ok
                  - data
                  - meta
                properties:
                  ok:
                    const: true
                  data:
                    type: object
                    additionalProperties: true
                  meta:
                    type: object
                    properties:
                      request_id:
                        type: string
                      cost:
                        $ref: '#/components/schemas/Cost'
                      cloud_processing:
                        $ref: '#/components/schemas/CloudProcessing'
                  media:
                    type: array
                    items:
                      type: object
                      additionalProperties: true
        default:
          $ref: '#/components/responses/Error'
components:
  parameters:
    IdempotencyKey:
      name: Idempotency-Key
      in: header
      required: false
      schema:
        type: string
      description: >-
        Retry a paid dispatch safely: the same key returns the job already
        dispatched instead of charging again.
    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.
  schemas:
    Cost:
      type: object
      description: AI credits the call cost.
      additionalProperties: true
    CloudProcessing:
      type: object
      description: Cloud processing the call used, and what is left.
      properties:
        ran_on:
          const: cloud
        minutes:
          type: number
        queued_minutes:
          type: number
        left_minutes:
          type: number
        bought_minutes:
          type: number
        note:
          type: string
    Error:
      type: object
      required:
        - ok
        - error
      properties:
        ok:
          const: false
        error:
          type: object
          required:
            - code
            - message
            - retryable
          properties:
            code:
              type: string
            message:
              type: string
              description: What went wrong, in words to act on.
            retryable:
              type: boolean
            suggested_action:
              type: string
              description: The next step that works.
            cloud_processing:
              $ref: '#/components/schemas/CloudProcessing'
  responses:
    Error:
      description: The call was refused or failed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: >-
        An API key (es_live_…) from Settings, under API keys, or an OAuth access
        token.

````