Skip to content

Pearl of the Orient API Docs (1.0.0)

Quick Overview

  • API Version: 1.0.0
  • Developer: Kyle Andre Lim
  • Base Path: /api/v1

Comprehensive API documentation for authentication, users, members, branch services, and offices endpoints.

Download OpenAPI description
Languages
Servers
Mock server
https://api-docs.pearlchaplaincy.org/_mock/openapi
Version 1 API base path
https://api-docs.pearlchaplaincy.org/api/v1

System

Health and root metadata endpoints

Operations

Auth

Authentication and account recovery

Operations

Users

User profile and admin user management

Operations

Members

Member application and management

Operations

Branch Service

Branch of service management

Operations

Offices

Office title management

Operations

Create office title (admin only)

Request

Security
BearerAuth
Bodyapplication/jsonrequired
Any of:
namestring[ 1 .. 100 ] charactersrequired
titlestring[ 1 .. 100 ] characters
descriptionstring or null[ 1 .. 1000 ] characters
sectionsArray of objects(Section)<= 20 items
levelstring(OfficeTitleLevel)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"
maxSlotsinteger or null>= 1
curl -i -X POST \
  https://api-docs.pearlchaplaincy.org/_mock/openapi/offices/create \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "string",
    "title": "string",
    "description": "string",
    "sections": [
      {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "title": "string",
        "type": "list",
        "items": [
          {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "content": "string"
          }
        ],
        "content": "string"
      }
    ],
    "level": "CHIEF_CHAPLAIN",
    "maxSlots": 1
  }'

Responses

Office title created

Bodyapplication/json
codestringrequired
messagestringrequired
dataobject(OfficeResource)required
data.​idstring(uuid)required
data.​namestringrequired
data.​levelstring(OfficeTitleLevel)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"
data.​descriptionstring or null
data.​maxSlotsinteger or null
data.​sectionsArray of objects(Section)required
data.​sections[].​idstring(uuid)
data.​sections[].​titlestring[ 1 .. 100 ] charactersrequired
data.​sections[].​typestringrequired
Enum"list""richtext"
data.​sections[].​itemsArray of objects(SectionItem)<= 50 items
data.​sections[].​contentstring<= 20000 characters
data.​createdAtstring(date-time)required
data.​updatedAtstring(date-time)required
Response
application/json
{ "code": "string", "message": "string", "data": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "level": "CHIEF_CHAPLAIN", "description": "string", "maxSlots": 0, "sections": [ … ], "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } }

Get all office titles

Request

Security
BearerAuth
Query
pageinteger>= 1
Default 1
limitinteger[ 1 .. 100 ]
Default 10
searchstring[ 1 .. 100 ] characters
sortBystring
Enum"createdAt""updatedAt""name""title""level"
sortOrderstring
Default "desc"
Enum"asc""desc"
curl -i -X GET \
  'https://api-docs.pearlchaplaincy.org/_mock/openapi/offices?page=1&limit=10&search=string&sortBy=createdAt&sortOrder=asc' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Office title list

Bodyapplication/json
codestringrequired
Example: "OK"
messagestringrequired
dataArray of objects(OfficeResource)required
data[].​idstring(uuid)required
data[].​namestringrequired
data[].​levelstring(OfficeTitleLevel)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"
data[].​descriptionstring or null
data[].​maxSlotsinteger or null
data[].​sectionsArray of objects(Section)required
data[].​sections[].​idstring(uuid)
data[].​sections[].​titlestring[ 1 .. 100 ] charactersrequired
data[].​sections[].​typestringrequired
Enum"list""richtext"
data[].​sections[].​itemsArray of objects(SectionItem)<= 50 items
data[].​sections[].​contentstring<= 20000 characters
data[].​createdAtstring(date-time)required
data[].​updatedAtstring(date-time)required
paginationobject(Pagination)required
pagination.​currentPageintegerrequired
pagination.​totalPagesintegerrequired
pagination.​totalCountintegerrequired
pagination.​limitintegerrequired
pagination.​hasNextPagebooleanrequired
pagination.​hasPreviousPagebooleanrequired
Response
application/json
{ "code": "OK", "message": "string", "data": [ { … } ], "pagination": { "currentPage": 0, "totalPages": 0, "totalCount": 0, "limit": 0, "hasNextPage": true, "hasPreviousPage": true } }

Get office title by ID

Request

Security
BearerAuth
Path
idstring(uuid)required
curl -i -X GET \
  'https://api-docs.pearlchaplaincy.org/_mock/openapi/offices/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Office title details

Bodyapplication/json
codestringrequired
Example: "OK"
messagestringrequired
dataobject(OfficeResource)required
data.​idstring(uuid)required
data.​namestringrequired
data.​levelstring(OfficeTitleLevel)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"
data.​descriptionstring or null
data.​maxSlotsinteger or null
data.​sectionsArray of objects(Section)required
data.​sections[].​idstring(uuid)
data.​sections[].​titlestring[ 1 .. 100 ] charactersrequired
data.​sections[].​typestringrequired
Enum"list""richtext"
data.​sections[].​itemsArray of objects(SectionItem)<= 50 items
data.​sections[].​contentstring<= 20000 characters
data.​createdAtstring(date-time)required
data.​updatedAtstring(date-time)required
Response
application/json
{ "code": "OK", "message": "string", "data": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "level": "CHIEF_CHAPLAIN", "description": "string", "maxSlots": 0, "sections": [ … ], "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } }

Update office title (admin only)

Request

Security
BearerAuth
Path
idstring(uuid)required
Bodyapplication/jsonrequired
namestring[ 1 .. 100 ] characters
titlestring[ 1 .. 100 ] characters
descriptionstring or null[ 1 .. 1000 ] characters
sectionsArray of objects(Section)<= 20 items
levelstring(OfficeTitleLevel)
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"
maxSlotsinteger or null>= 1
curl -i -X PUT \
  'https://api-docs.pearlchaplaincy.org/_mock/openapi/offices/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "string",
    "title": "string",
    "description": "string",
    "sections": [
      {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "title": "string",
        "type": "list",
        "items": [
          {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "content": "string"
          }
        ],
        "content": "string"
      }
    ],
    "level": "CHIEF_CHAPLAIN",
    "maxSlots": 1
  }'

Responses

Office title updated

Bodyapplication/json
codestringrequired
messagestringrequired
dataobject(OfficeResource)required
data.​idstring(uuid)required
data.​namestringrequired
data.​levelstring(OfficeTitleLevel)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"
data.​descriptionstring or null
data.​maxSlotsinteger or null
data.​sectionsArray of objects(Section)required
data.​sections[].​idstring(uuid)
data.​sections[].​titlestring[ 1 .. 100 ] charactersrequired
data.​sections[].​typestringrequired
Enum"list""richtext"
data.​sections[].​itemsArray of objects(SectionItem)<= 50 items
data.​sections[].​contentstring<= 20000 characters
data.​createdAtstring(date-time)required
data.​updatedAtstring(date-time)required
Response
application/json
{ "code": "string", "message": "string", "data": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "level": "CHIEF_CHAPLAIN", "description": "string", "maxSlots": 0, "sections": [ … ], "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } }

Delete office title (admin only)

Request

Security
BearerAuth
Path
idstring(uuid)required
curl -i -X DELETE \
  'https://api-docs.pearlchaplaincy.org/_mock/openapi/offices/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Office title deleted

Response
No content