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

# Set Task Permissions

> Replaces the full set of granted tool permissions for a task. Pass an empty list to clear all permissions.



## OpenAPI

````yaml /openapi/public-api-endpoint-reference.yaml put /v1/ai/agents/tasks/{taskId}/permissions
openapi: 3.1.0
info:
  title: Maia Public REST API
  version: '1.0'
servers:
  - description: EU1
    url: https://eu1.api.matillion.com/dpc
  - description: US1
    url: https://us1.api.matillion.com/dpc
security:
  - bearerAuth: []
tags:
  - description: Manage Schedules
    name: Schedules
  - description: Manage Connections
    name: Connections
  - description: Operations for managing Project Variables
    name: Project Variables
  - description: Manage Pipelines
    name: Pipelines
  - description: Review pipelines against quality rules
    name: Pipeline Quality Review
  - description: Execute tests within a project
    name: Test Execution
  - description: Manage your AI agent tasks
    name: AI Agent Tasks
  - description: SCIM endpoints for user/group permission management
    name: Directory Integration
  - description: Publish shared pipeline artifacts
    name: Shared Pipeline Artifacts
  - description: Manage Repositories
    name: Repositories
  - description: Report on Credit Consumption
    name: Consumption
  - description: Manage Artifacts
    name: Artifacts
  - description: Operations for data lineage and governance
    name: Data Lineage
  - description: Manage Streaming Pipelines
    name: Streaming Pipelines
  - description: Execute a pipeline
    name: Pipeline Execution
  - description: ''
    name: Environments
  - description: ''
    name: Projects
  - description: Manage Agents
    name: Agents
  - description: Operations for managing Environment-level Overrides of Project Variables
    name: Project Variable Environment Overrides
  - description: Query audit events
    name: Audit Events
  - description: Connector Profiles
    name: Connectors
paths:
  /v1/ai/agents/tasks/{taskId}/permissions:
    put:
      tags:
        - AI Agent Tasks
      summary: Set Task Permissions
      description: >-
        Replaces the full set of granted tool permissions for a task. Pass an
        empty list to clear all permissions.
      operationId: setPermissions
      parameters:
        - in: path
          name: taskId
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetPermissionsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetPermissionsResponse'
          description: Permissions updated successfully
        '400':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Invalid request body
        '401':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Missing or invalid authentication token
        '403':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Insufficient permissions
        '404':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Task not found
        '502':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Upstream service error
        '504':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Upstream service timeout
components:
  schemas:
    SetPermissionsRequest:
      type: object
      properties:
        grantedPermissions:
          type: array
          items:
            $ref: '#/components/schemas/AllowedTool'
      required:
        - grantedPermissions
    SetPermissionsResponse:
      type: object
      properties:
        grantedPermissions:
          type: array
          description: The full list of tools now granted permission for this task
          items:
            $ref: '#/components/schemas/AllowedTool'
        taskId:
          type: string
          format: uuid
          description: The unique identifier of the task
          example: 550e8400-e29b-41d4-a716-446655440000
    ProblemDetail:
      type: object
      properties:
        detail:
          type: string
        instance:
          type: string
        status:
          type: integer
          format: int32
        title:
          type: string
        type:
          type: string
          format: uri
        violations:
          type: array
          items:
            type: string
    AllowedTool:
      type: object
      properties:
        toolName:
          type: string
          description: The name of the tool to allow
          example: execute_sql
          minLength: 1
      required:
        - toolName
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      description: a valid bearer token
      scheme: bearer
      type: http

````