List Namespace Access Policies
const url = 'https://example.com/registry/v1/workspaces/example/namespaces/example/access-policies';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/registry/v1/workspaces/example/namespaces/example/access-policiesReturns a page of access policies bound to the given Namespace, filtered by AIP-160 expression and ordered per AIP-132.
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The unique identifier of the workspace that the namespace belongs to
The unique identifier of the namespace whose policies are listed
Query Parameters
Section titled “Query Parameters ”The maximum number of access policies to return. The service may return fewer than this value. If unspecified, at most 20 access policies will be returned. The maximum value is 100; values above 100 will be coerced to 100.
A page token, received from a previous ListNamespaceAccessPolicies call.
Provide this to retrieve the subsequent page.
When paginating, all other parameters provided to ListNamespaceAccessPolicies must match
the call that provided the page token.
A filter expression allows you to filter the access policies listed in the response.
At qibdo, we use the AIP-160 proposal, that means that your expression should include:
field name, an operator, and the value you wish to filter by.
The value can be a string, number, or boolean, and the operator must be one of the following: =, !=, >, <, <=, >=, or :
You can group multiple expressions using parentheses and the logical operators AND and OR.
Examples:
principal_id = "abc-123" -> Filter by the principal that the policy is granted to
(action = "PUSH") AND (principal_type = "USER") -> Filter by action and principal type
expires_at:* -> Returns policies that have an expiry set
The order in which to sort the results. If not specified, the results will be sorted by created in descending order.
At qibdo, we use the AIP-132 proposal, that means:
Values should be a comma separated list of fields. For example: "foo,bar".
The default sort order is ascending. To specify descending order, a suffix " desc" should be added. For example: "foo desc,bar".
Redundant space characters in the syntax are insignificant.
Responses
Section titled “ Responses ”OK
ListNamespaceAccessPoliciesResponse
Response message for ListNamespaceAccessPolicies.
Note: This API intentionally omits total_size from list responses.
Keyset pagination does not support efficient total count computation
(COUNT(*) requires a full table scan). Per AIP-158, total_size is optional.
object
List of the access policies bound to the requested namespace.
object
A token, which can be sent as page_token to retrieve the next page.
If this field is empty, there are no subsequent pages.
Example
{ "access_policies": [ { "scope_type": "POLICY_SCOPE_TYPE_UNSPECIFIED", "principal_type": "PRINCIPAL_TYPE_UNSPECIFIED", "actions": [ "REGISTRY_ACTION_UNSPECIFIED" ] } ]}default
Section titled “default ”Default error response
The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide.
object
The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
A list of messages that carry the error details. There is a common set of message types for APIs to use.
Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
object
The type of the serialized message.
Example generated
{ "code": 1, "message": "example", "details": [ { "@type": "example" } ]}