Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.
Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.
HTTP request
POST https://apigateway.googleapis.com/v1/{resource=projects/*/locations/*/apis/*}:testIamPermissions
REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.
Request body
The request body contains data with the following structure:
JSON representation
{"permissions": [string]}
Fields
permissions[]
string
The set of permissions to check for the resource. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. For more information see IAM Overview.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-07-28 UTC."],[[["\u003cp\u003eThis operation returns the permissions a caller has on a specified resource, or an empty set if the resource doesn't exist, and is designed for UI and tool building, not authorization checking.\u003c/p\u003e\n"],["\u003cp\u003eThe HTTP request for this operation is a \u003ccode\u003ePOST\u003c/code\u003e request to \u003ccode\u003ehttps://apigateway.googleapis.com/v1/{resource=projects/*/locations/*/apis/*}:testIamPermissions\u003c/code\u003e, utilizing gRPC Transcoding syntax.\u003c/p\u003e\n"],["\u003cp\u003eThe required path parameter is \u003ccode\u003eresource\u003c/code\u003e, a string specifying the resource for which policy details are requested, and the request body includes a JSON object containing an array of \u003ccode\u003epermissions\u003c/code\u003e to check.\u003c/p\u003e\n"],["\u003cp\u003eThe response body contains an instance of TestIamPermissionsResponse on success, and this operation requires \u003ccode\u003ehttps://www.googleapis.com/auth/cloud-platform\u003c/code\u003e OAuth scope for authorization.\u003c/p\u003e\n"]]],[],null,[]]