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

# A specialized version of the PUT method that tries to create or update multiple files atomically.

> This method does not allow to create directories. The contents of all provided entries must be non null.
Either all the entries or none of them are updated. The "throwNotFound" mode for this operation doesn't exist, because "Not Found" error is never encountered.



## OpenAPI

````yaml post /activeviam/content/rest/v8/bulk/put
openapi: 3.0.0
info:
  title: Atoti REST services
  version: 6.1.18-SNAPSHOT
servers:
  - description: Generated server url
    url: http://localhost:9090
security: []
tags:
  - description: Implementation of the REST API controller for an ActivePivot database.
    name: Database REST API
  - description: >
      XML for Analysis (XMLA) endpoint for executing MDX queries and OLAP
      discovery operations.


      This endpoint implements the XMLA protocol which is used by:

      - Microsoft Excel and other OLAP clients

      - Custom BI tools that support XMLA connectivity


      The endpoint supports both text XML and binary XML formats for improved
      performance.
    name: XMLA API
  - description: Definition of REST API to query data from ActivePivot (V10).
    name: Query REST API (V10)
  - description: Definition of REST API to query data from ActivePivot (V9).
    name: Query REST API (V9)
  - description: Implementation of the REST Bulk API of the content server (version 8).
    name: Bulk REST API
  - description: Implementation of the REST API of the content server.
    name: Content Server REST API
  - description: Implementation of the REST API controller for an ActivePivot database.
    name: Database REST API v9
  - description: ' Definition of the REST service returning the list of services exposed by an application.'
    name: Version REST API
  - description: Rest Service providing the discovery information.
    name: Discovery REST API
  - description: API to access measures information.
    name: Diagnostics API
  - description: JSON Web Token (JWT) endpoint.
    name: JWT API
  - description: >
      Endpoints to retrieve and manage query history.


      **Note:** This API is experimental and may change in future versions
      without notice.
    name: Query History REST API (Experimental)
  - description: Description of REST API to configure an ActivePivot application.
    name: Configuration REST API
  - description: API to export the result of MDX queries
    name: Data Export
  - description: >
      GetAggregatesQuery (GAQ) REST API for executing OLAP queries.


      This API provides a programmatic way to execute GetAggregatesQuery
      operations

      against Atoti cubes. Results and updates are streamed in Apache Arrow
      format for efficient

      data transfer and processing.
    name: Continuous GAQ Query REST API (Experimental)
  - description: Endpoints for AI-based optimization of Atoti cubes
    name: AI Optimizer
  - description: >
      GetAggregatesQuery (GAQ) REST API for executing OLAP queries.


      This API provides a programmatic way to execute GetAggregatesQuery
      operations

      against Atoti cubes. Results are returned in Apache Arrow format for
      efficient

      data transfer and processing.


      **Note:** This API is experimental and may change in future versions
      without notice.
    name: GAQ Query REST API (Experimental)
  - description: Implementation of the REST Bulk API of the content server.
    name: Bulk REST API
paths:
  /activeviam/content/rest/v8/bulk/put:
    post:
      tags:
        - Bulk REST API
      summary: >-
        A specialized version of the PUT method that tries to create or update
        multiple files atomically.
      description: >-
        This method does not allow to create directories. The contents of all
        provided entries must be non null.

        Either all the entries or none of them are updated. The "throwNotFound"
        mode for this operation doesn't exist, because "Not Found" error is
        never encountered.
      operationId: putMethod_2
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PutJsonParam'
        description: >-
          Serialized JSON parameter containing the entries to add or update
          specified by path to content map and access permissions.
        required: true
      responses:
        '200':
          description: Success - ell the entries are updated.
        '400':
          description: Bad Request – One of the paths is wrongly formatted.
        '403':
          description: >-
            Forbidden – The user does not have write access to one of the
            resource, or the user is not allowed to use the given readers/owners
            permissions.
        '409':
          description: >-
            Conflict – An entry already exists in the content service at the
            path of one of the entries to put and overwriting is not allowed, or
            the user does not have write access to an entry and does not have
            read access to its parent directory
components:
  schemas:
    PutJsonParam:
      properties:
        overwrite:
          type: boolean
        owners:
          items:
            type: string
          type: array
        pathToContent:
          additionalProperties:
            type: string
          type: object
        readers:
          items:
            type: string
          type: array
        recursive:
          type: boolean
      type: object

````