# Get all office titles Endpoint: GET /offices Version: 1.0.0 Security: BearerAuth ## Query parameters: - `page` (integer) - `limit` (integer) - `search` (string) - `sortBy` (string) Enum: "createdAt", "updatedAt", "name", "title", "level" - `sortOrder` (string) Enum: "asc", "desc" ## Response 200 fields (application/json): - `code` (string, required) Example: "OK" - `message` (string, required) - `data` (array, required) - `data.id` (string, required) - `data.name` (string, required) - `data.level` (string, required) Enum: "CHIEF_CHAPLAIN", "NATIONAL_CHAPLAIN_DIRECTOR", "REGIONAL_CHAPLAIN_DIRECTOR", "REGIONAL_DEPUTY_CHAPLAIN_DIRECTOR", "PROVINCIAL_CHAPLAIN_DIRECTOR", "PROVINCIAL_DEPUTY_CHAPLAIN_DIRECTOR", "CITY_CHAPLAIN", "MUNICIPAL_CHAPLAIN", "CITY_MUNICIPAL_DEPUTY_CHAPLAIN", "BARANGAY_CHAPLAIN", "BARANGAY_DEPUTY_CHAPLAIN" - `data.description` (string,null) - `data.maxSlots` (integer,null) - `data.sections` (array, required) - `data.sections.title` (string, required) - `data.sections.type` (string, required) Enum: "list", "richtext" - `data.sections.items` (array) - `data.sections.items.content` (string, required) - `data.createdAt` (string, required) - `data.updatedAt` (string, required) - `pagination` (object, required) - `pagination.currentPage` (integer, required) - `pagination.totalPages` (integer, required) - `pagination.totalCount` (integer, required) - `pagination.limit` (integer, required) - `pagination.hasNextPage` (boolean, required) - `pagination.hasPreviousPage` (boolean, required) ## Response 401 fields (application/json): - `code` (string, required) Example: "BAD_REQUEST" - `message` (string, required) Example: "Invalid request" - `error` (any) Optional debug payload ## Response 500 fields (application/json): - `code` (string, required) Example: "BAD_REQUEST" - `message` (string, required) Example: "Invalid request" - `error` (any) Optional debug payload