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

# Change permissions for multiple entries atomically.

> Allows atomic update of owners and readers for multiple entries. Either all entries are updated or none. If 'throwNotFound' is false, missing entries are ignored. The 'mode' parameter controls how permissions are updated: REPLACE (default) replaces existing permissions, UPSERT adds to existing permissions, and REMOVE removes from existing permissions.



## OpenAPI

````yaml put /activeviam/content/rest/v8/bulk/share
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/share:
    put:
      tags:
        - Bulk REST API
      summary: Change permissions for multiple entries atomically.
      description: >-
        Allows atomic update of owners and readers for multiple entries. Either
        all entries are updated or none. If 'throwNotFound' is false, missing
        entries are ignored. The 'mode' parameter controls how permissions are
        updated: REPLACE (default) replaces existing permissions, UPSERT adds to
        existing permissions, and REMOVE removes from existing permissions.
      operationId: share
      parameters:
        - description: When set to False, the 'Not Found' errors are silently ignored.
          in: query
          name: throwNotFoundParam
          required: true
          schema:
            default: true
            enum:
              - 'false'
              - 'true'
            type: boolean
        - in: query
          name: throwNotFound
          required: false
          schema:
            default: true
            type: boolean
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkShareJsonParam'
        description: >-
          Serialized JSON parameter containing the entries to change permissions
          for, the new permissions, and the mode (REPLACE, UPSERT, or DELETE).
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: Permissions updated for all entries.
        '400':
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: >-
            Bad Request – The path is wrongly formatted, the target path is an
            existing non-directory entry, or the mode is invalid.
        '403':
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: >-
            Forbidden – The user does not have write access to the entry or is
            not allowed to use the given readers/owners permissions.
        '404':
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: >-
            Not Found – One of the entries does not exist or the user does not
            have the permissions to see it, and 'throwNotFound' is True.
components:
  schemas:
    BulkShareJsonParam:
      properties:
        mode:
          type: string
        owners:
          items:
            type: string
          type: array
        paths:
          items:
            type: string
          type: array
        readers:
          items:
            type: string
          type: array
      type: object

````