Skip to main content

List Policies

Sprint 3

List policies with pagination and filtering.

Endpoint

GET /api/v1/policies

Headers

HeaderRequiredDescription
AuthorizationYesBearer <access_token>

Query Parameters

ParameterTypeRequiredDescription
workspace_idintegerNoFilter by workspace ID
typestringNoFilter by policy type
is_activebooleanNoFilter by active status
pageintegerNoPage number (default: 1)
page_sizeintegerNoItems per page (default: 20)
searchstringNoSearch by name or description

Response

Success (200)

{
"success": true,
"data": {
"items": [
{
"id": 1,
"organization_id": 1,
"workspace_id": 1,
"name": "RLS Policy - Region Filter",
"description": "Filter rows by user region",
"type": "row_level_security",
"is_active": true,
"priority": 10,
"created_at": "2024-12-01T08:00:00Z",
"updated_at": "2024-12-01T10:00:00Z"
}
],
"pagination": {
"page": 1,
"page_size": 20,
"total_items": 15,
"total_pages": 1
}
},
"message": "Policies retrieved successfully"
}

Error Codes

StatusCodeDescription
400BAD_REQUESTInvalid request parameters
401UNAUTHORIZEDInvalid or missing authentication token
500INTERNAL_SERVER_ERRORInternal server error

Features

  • Pagination support
  • Filtering by workspace, type, and active status
  • Search by name or description
  • Organization-scoped

Example

curl -X GET "https://api.rivergen.com/api/v1/policies?type=row_level_security&is_active=true&page=1&page_size=20" \
-H "Authorization: Bearer <access_token>"