Treasure Data Access Control - Policies API

The Access Control - Policies API from Treasure Data — 5 operation(s) for access control - policies.

Business capability
Identity & Access Management BC-620.20

Operations 11

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /access_control/policies List access control policies · get Access Control Policies #
Ask an LLM
“Which access control policies exist in my account?”
“Can I find the policies that use a particular column permission tag?”
Tell an agent
List all access control policies.
List the policies that use column permission tag {column_permission_tag}.
POST /access_control/policies Create an access control policy · Create an Access Control Policy #
Ask an LLM
“How do I define a new access control policy in Treasure Data?”
“What goes into a new permission policy when I create one?”
Tell an agent
Create an access control policy from {policy}.
Set up a new permission policy with definition {policy}.
GET /access_control/policies/{policy_id} Get an access control policy · Get an Access Control Policy #
Ask an LLM
“What does a specific access control policy contain?”
“Can I look up one policy's details by its ID?”
Tell an agent
Show access control policy {policy_id}.
Get the details of policy {policy_id}.
PATCH /access_control/policies/{policy_id} Update an access control policy · Update an Access Control Policy #
Ask an LLM
“Can I edit the name or description of an existing policy?”
“Is it possible to change an access control policy after it is created?”
Tell an agent
Update access control policy {policy_id} with {policy}.
Edit the definition of policy {policy_id} to {policy}.
DELETE /access_control/policies/{policy_id} Delete an access control policy · Delete an Access Control Policy #
Ask an LLM
“How do I remove an access control policy entirely?”
“Can a policy nobody needs anymore be deleted?”
Tell an agent destructive · confirm first
Delete access control policy {policy_id}.
Remove policy {policy_id} from the account.
GET /access_control/users/{user_id}/policies List the policies assigned to a user · get User Policies #
Ask an LLM
“Which access control policies does a given user have?”
“What policies are currently attached to one team member?”
Tell an agent
List the policies assigned to user {user_id}.
Show which access policies user {user_id} holds.
PATCH /access_control/users/{user_id}/policies Replace a user's set of policies · Update User Policies #
Ask an LLM
“Can I set a user's full list of policies in one call?”
“How do I replace every policy a user has with a new set?”
Tell an agent
Set user {user_id}'s policies to exactly {policy_ids}.
Replace all policies on user {user_id} with policies {policy_ids}.
POST /access_control/users/{user_id}/policies/{policy_id} Attach a policy to a user (user path) · Attach a policy to a user #
Ask an LLM
“Can I add a single policy to a user through the user's policies path?”
“Is there a user-centric endpoint for granting one extra policy?”
Tell an agent
Under user {user_id}'s policies, add policy {policy_id}.
Grant user {user_id} one more policy, {policy_id}, via the user policies route.
DELETE /access_control/users/{user_id}/policies/{policy_id} Detach a policy from a user (user path) · Detach a Policy from a User #
Ask an LLM
“Can I take one policy away from a user through the user's policies path?”
“Is there a user-centric way to revoke a single policy?”
Tell an agent destructive · confirm first
Under user {user_id}'s policies, remove policy {policy_id}.
Revoke policy {policy_id} from user {user_id} via the user policies route.
POST /access_control/policies/{policy_id}/users/{user_id} Attach a user to a policy (policy path) · Attach #
Ask an LLM
“Can I add a user to a policy starting from the policy's users path?”
“Is there a policy-centric endpoint for putting one more user on a policy?”
Tell an agent
Under policy {policy_id}'s users, add user {user_id}.
Put user {user_id} on policy {policy_id} via the policy users route.
DELETE /access_control/policies/{policy_id}/users/{user_id} Detach a user from a policy (policy path) · Detach #
Ask an LLM
“Can I drop a user from a policy starting from the policy's users path?”
“Is there a policy-centric way to take one user off a policy?”
Tell an agent destructive · confirm first
Under policy {policy_id}'s users, remove user {user_id}.
Take user {user_id} off policy {policy_id} via the policy users route.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/treasure-data:treasure-data-access-control-policies-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

treasure-data-access-control-policies-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Treasure Data Access Control - Policies API
  version: '3'
servers:
- url: https://api.treasuredata.com/v3
- url: https://api.treasuredata.co.jp/v3
- url: https://api.ap02.treasuredata.com/v3
- url: https://api.eu01.treasuredata.com/v3
security:
- ApiKeyAuth: []
tags:
- name: Access Control Policies
paths:
  /access_control/policies:
    get:
      summary: get Access Control Policies
      description: Retrieves a list of policies.
      operationId: getAccessControlPolicies
      tags:
      - Access Control Policies
      parameters:
      - in: query
        name: column_permission_tag
        description: Return only policies that refer to the specified tag
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AccessControlPolicy'
    post:
      summary: Create an Access Control Policy
      description: Creates a policy.
      operationId: createAccessControlPolicy
      tags:
      - Access Control Policies
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAccessControlPolicyRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessControlPolicy'
  /access_control/policies/{policy_id}:
    parameters:
    - $ref: '#/components/parameters/path_access_control_policy_id'
    get:
      summary: Get an Access Control Policy
      description: Retrieves information about the specified policy.
      operationId: getAccessControlPolicyById
      tags:
      - Access Control Policies
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessControlPolicy'
    patch:
      summary: Update an Access Control Policy
      description: Updates information related to a policy.
      operationId: updateAccessControlPolicyById
      tags:
      - Access Control Policies
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateAccessControlPolicyRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessControlPolicy'
    delete:
      summary: Delete an Access Control Policy
      description: Deletes a policy.
      operationId: deleteAccessControlPolicyById
      tags:
      - Access Control Policies
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessControlPolicy'
  /access_control/users/{user_id}/policies:
    parameters:
    - $ref: '#/components/parameters/path_user_id'
    get:
      summary: get User Policies
      description: Retrieves a list of policies by user.
      operationId: getAccessControlPoliciesByUserId
      tags:
      - Access Control Policies
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AccessControlPolicy'
    patch:
      summary: Update User Policies
      description: Updates policies by user ID.
      operationId: updateAccessControlPoliciesByUserId
      tags:
      - Access Control Policies
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateAccessControlPoliciesRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AccessControlPolicy'
  /access_control/users/{user_id}/policies/{policy_id}:
    parameters:
    - $ref: '#/components/parameters/path_user_id'
    - $ref: '#/components/parameters/path_access_control_policy_id'
    post:
      summary: Attach a policy to a user
      description: Attaches a policy to a user.
      operationId: attachUserAndPolicy
      tags:
      - Access Control Policies
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessControlPolicy'
    delete:
      summary: Detach a Policy from a User
      description: Detaches a policy from a user.
      operationId: detachUserAndPolicy
      tags:
      - Access Control Policies
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessControlPolicy'
  /access_control/policies/{policy_id}/users/{user_id}:
    parameters:
    - $ref: '#/components/parameters/path_access_control_policy_id'
    - $ref: '#/components/parameters/path_user_id'
    post:
      summary: Attach
      description: This operation attaches a policy to a user.
      operationId: attachPolicyAndUser
      tags:
      - Access Control Policies
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessControlPolicy'
    delete:
      summary: Detach
      description: Detaches a user from a policy.
      operationId: detachPolicyAndUser
      tags:
      - Access Control Policies
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessControlPolicy'
components:
  schemas:
    CreateAccessControlPolicyRequest:
      type: object
      additionalProperties: false
      required:
      - policy
      properties:
        policy:
          type: object
          additionalProperties: false
          required:
          - name
          properties:
            name:
              $ref: '#/components/schemas/AccessControlPolicy/properties/name'
            description:
              $ref: '#/components/schemas/AccessControlPolicy/properties/description'
    AccessControlPolicy:
      title: Access Control Policy
      type: object
      additionalProperties: false
      required:
      - id
      - account_id
      - name
      properties:
        id:
          $ref: '#/components/schemas/AccessControlPolicyId'
        account_id:
          $ref: '#/components/schemas/AccountId'
        name:
          description: Policy's name
          type: string
          example: some_policy
        description:
          description: Policy's description
          type: string
          example: written about the policy
        user_count:
          description: The number of users which the policy attaches to
          type: integer
          example: 3
    UserId:
      type: integer
      example: 123
    UpdateAccessControlPolicyRequest:
      type: object
      additionalProperties: false
      required:
      - policy
      properties:
        policy:
          type: object
          additionalProperties: false
          properties:
            name:
              $ref: '#/components/schemas/AccessControlPolicy/properties/name'
            description:
              $ref: '#/components/schemas/AccessControlPolicy/properties/description'
    UpdateAccessControlPoliciesRequest:
      type: object
      additionalProperties: false
      required:
      - policy_ids
      properties:
        policy_ids:
          type: array
          items:
            type: string
          example:
          - '1'
          - '2'
          - '42'
    AccountId:
      type: integer
      example: 123
    AccessControlPolicyId:
      type: integer
      example: 67
  parameters:
    path_user_id:
      name: user_id
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/UserId'
    path_access_control_policy_id:
      name: policy_id
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/AccessControlPolicyId'
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: TD1