{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"redocly_category":"Products","product_name":"Control Panel","type":"markdown"},"seo":{"title":"Setting Policy Based Database Permissions Using the API","description":"Use the API to grant users specific database access permissions","siteUrl":"https://docs.treasure.ai","lang":"en-US","jsonLd":{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.treasure.ai/","name":"Treasure AI","url":"https://www.treasure.ai/","logo":"https://www.treasure.ai/hubfs/assets/images/logos/primary-logo.svg"},{"@type":"WebSite","@id":"https://docs.treasure.ai/#website","name":"Treasure AI Documentation","url":"https://docs.treasure.ai/","inLanguage":["en","ja"],"publisher":{"@id":"https://www.treasure.ai/"}}]},"llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"setting-policy-based-database-permissions-using-the-api","__idx":0},"children":["Setting Policy Based Database Permissions Using the API"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can set up database permissions using the API, enabling you to grant individual users access to specific databases."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For each account, you can set user access to databases using the following permissions:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Permission"},"children":["Permission"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Manage"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The user has all available permissions, including owner_manage, download, edit, query, and import, and, can perform any operation on databases in the account. (Indicated under the ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Full Access"]}," category in Treasure Console)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Download"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The User has permission to download specified databases. (Indicated under the ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Limited Access"]}," category only in Treasure Console)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Owner_Manage"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The user can manage their own databases. (Indicated as ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Manage Own Database"]}," under the ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Limited Access"]}," category in Treasure Console)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Import"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The user can run import jobs against any database in the account. (Indicated as ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Import Only"]}," in Treasure Console)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Query"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The user can view and run queries against any database in the account. (Indicated as ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Query Only"]}," in Treasure Console)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Edit"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The user has edit permissions on specified accounts. (Indicated as ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["General Access"]}," in Treasure Console)"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Learn more about ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/control-panel/security/policies/about-policy-based-database-permissions"},"children":["policy-based database permissions"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"setting-manage-databases-permission","__idx":1},"children":["Setting Manage Databases Permission"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can give a user full database access by using the permission: manage—granting the user all available permissions, including owner_manage, download, edit, query, and import, in addition to performing any operation on databases in the account."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"$ curl --location --request PATCH \\\n'https://api.treasuredata.com/v3/access_control/policies/<policy_id>/permissions' \\\n--header 'Authorization: TD1 <api_key>' \\\n--header 'Content-Type: application/json' \\\n--data-raw '{\"Databases\": [{\"operation\": \"manage\"}]}'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"setting-download-database-permission","__idx":2},"children":["Setting Download Database Permission"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Set a user's database access to download—granting them permission to download specified databases."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"$ curl 'https://{{host}}/v3/access_control/policies/{{policy_id}}/permissions' \\\n-X 'PATCH' \\\n--data-raw '{\"Databases\":[{\"operation\":”download\"}]}'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"setting-owner_manage-database-permission","__idx":3},"children":["Setting Owner_Manage Database Permission"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Set a user's database access to owner_manager—granting them permission to manage their own databases."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl 'https://{{host}}/v3/access_control/policies/{{policy_id}}/permissions' \\\n-X 'PATCH' \\\n--data-raw '{\"Databases\":[{\"operation\":”owner_manage\"}]}'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"setting-import-database-permission","__idx":4},"children":["Setting Import Database Permission"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Set a user's database access to import—granting permission to run data import jobs against databases in the account."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl --location --request PATCH 'https://api.treasuredata.com/v3/access_control/policies/<policy_id>/permissions' \\\n--header 'Authorization: TD1 <api_key>' \\\n--header 'Content-Type: application/json' \\\n--data-raw '{\n    \"Databases\": [\n        {\"operation\": \"import\", \"ids\": <db_id>}\n    ]\n}\n'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"setting-query-database-permission","__idx":5},"children":["Setting Query Database Permission"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Set a user's database access to query—granting permission to view and run queries against specific databases in the account."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl --location --request PATCH 'https://api.treasuredata.com/v3/access_control/policies/<policy_id>/permissions' \\\n--header 'Authorization: TD1 <api_key>' \\\n--header 'Content-Type: application/json' \\\n--data-raw '{\n    \"Databases\": [\n        {\"operation\": \"query\", \"ids\": <db_id>}\n    ]\n}\n'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"setting-edit-database-permission","__idx":6},"children":["Setting Edit Database Permission"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Set a user's database permission to edit—granting them permission to edit databases in the account."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl --location --request PATCH 'https://api.treasuredata.com/v3/access_control/policies/<policy_id>/permissions' \\\n--header 'Authorization: TD1 <api_key>' \\\n--header 'Content-Type: application/json' \\\n--data-raw '{\n    \"Databases\": [\n        {\"operation\": \"edit\", \"ids\": <db_id>}\n    ]\n}'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"updating-a-database-policy-using-the-api","__idx":7},"children":["Updating a Database Policy Using the API"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can update a database policy by making the following calls."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Get the policy you want to update using the policy ID. For instance, you can view the current permission for a policy: ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["manage"]}," , ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["edit"]}," to database(10), ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["query"]}," to database(1,2,3), ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["import"]}," to database(5,4)."]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl --location --request GET 'https://api.treasuredata.com/v3/access_control/policies/<policy_id>/permissions' \\\n--header 'Authorization: TD1 <api_key>'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":" {\n  \"Databases\": [\n    {\"operation\":\"manage\"},\n\t\t{\"operation\": \"edit\", \"ids\": \"10\"},\n    {\"operation\": \"query\", \"ids\": \"1,2,3\"},\n    {\"operation\": \"import\", \"ids\": \"5,4\"}\n  ]\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"ol","attributes":{"start":2},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You can use PATCH to update the permissions to something like ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["manage"]}," , ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["query"]}," to database(1,3), ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["import"]}," to database(2,5,6)."]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl --location --request PATCH 'https://api.treasuredata.com/v3/access_control/policies/<policy_id>/permissions' \\\n--header 'Authorization: TD1 <api_key>' \\\n--header 'Content-Type: application/json' \\\n--data-raw '{\n    \"Databases\": [\n         {\"operation\": \"manage\"},\n         {\"operation\": \"query\", \"ids\": \"1,3\"},\n         {\"operation\": \"import\", \"ids\": \"2,5,6\"}\n    ]\n}'\n","lang":"bash"},"children":[]}]},"headings":[{"value":"Setting Policy Based Database Permissions Using the API","id":"setting-policy-based-database-permissions-using-the-api","depth":1},{"value":"Setting Manage Databases Permission","id":"setting-manage-databases-permission","depth":2},{"value":"Setting Download Database Permission","id":"setting-download-database-permission","depth":2},{"value":"Setting Owner_Manage Database Permission","id":"setting-owner_manage-database-permission","depth":2},{"value":"Setting Import Database Permission","id":"setting-import-database-permission","depth":2},{"value":"Setting Query Database Permission","id":"setting-query-database-permission","depth":2},{"value":"Setting Edit Database Permission","id":"setting-edit-database-permission","depth":2},{"value":"Updating a Database Policy Using the API","id":"updating-a-database-policy-using-the-api","depth":2}],"frontmatter":{"seo":{"title":"Setting Policy Based Database Permissions Using the API","description":"Use the API to grant users specific database access permissions"}},"lastModified":"2026-06-01T09:09:59.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/control-panel/security/policies/setting-policy-based-database-permissions-using-the-api","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}