Build Pastoral Care into your app
The Pastoral Care API gives a signed-in member the same confidential workflows available in TheFaithApp mobile app:- Share, review, edit, and withdraw a care request.
- See member-safe status, visit, support-plan, and timeline information.
- Manage consent for private follow-up.
- Save or pause a private life-moment date.
- Create a quiet-day window for sensitive seasons.
Authentication
Every Pastoral Care call requires the partner app key and the signed-in member’s access token:401 Unauthorized.
Follow the Hosted Auth guide before integrating
these endpoints.
Published endpoints
The public contract mirrors the Pastoral Care calls used by TheFaithApp mobile app.
Staff notes, staff tasks, resolution notes, Care Radar review signals, coverage
rotations, availability, rite runsheets, preaching plans, and staff
coordination are not public partner endpoints.
Recommended app flow
1
Load the member's care home
Call
GET /v1/care-requests. Keep the returned options with the screen;
they are the allowed values for care type, privacy, urgency, and contact
method.The list contains active and past requests. Use can_edit and
can_withdraw to decide which actions to display.2
Let the member review the privacy boundary
Explain
care_team and pastoral_only before submission. Counseling,
benevolence, and crisis requests are always restricted to pastoral staff, even
if the app sends care_team.3
Collect explicit contact consent
Send
contact_consent: true only after the member actively confirms that
the church care team may contact them.For phone, text, or email contact, contact_value may be omitted when the
signed-in member profile already has the matching value.4
Handle urgent requests responsibly
For
urgency: "urgent" or type: "crisis_support", show a clear notice that
Pastoral Care is not an emergency service. Submit emergency_acknowledged: true only after the member confirms the notice.5
Refresh after a mutation
Use the care request returned by create, update, or withdraw immediately,
then refresh
GET /v1/care-requests when the screen resumes or receives a
generic care-status notification.Share a care request
201 Created and the new record in
data.care_request.
Care types
Use the values returned indata.options.types. The current values are:
Render a request safely
Each care request can include:status,urgency, and whether a caregiver is assigned.next_follow_up_atwhen the care team has scheduled a follow-up.- Member-visible visit times, location, instructions, and outcome.
- Member-visible support-plan dates, coordinator, and requested support.
- A reduced timeline of safe workflow events.
content_purgedwhen confidential content has reached the end of retention.
There is no public single-request
GET endpoint. Keep the selected item from
GET /v1/care-requests, and refresh the list when current data is needed.Edit and withdraw
PUT /v1/care-requests/{careRequest} is a full form update. Send all required
request fields, not only the changed field.
Use POST /v1/care-requests/{careRequest}/withdraw only after a confirmation
step. Withdrawal is final. The response sets can_edit and can_withdraw to
false.
Resolved, withdrawn, and retention-purged requests cannot be edited.
Member-controlled follow-up
CallGET /v1/care-life-moments to load:
preferences: current consent and contact choices.life_moments: private dates owned by the member.suppressions: the member’s quiet-day windows.options: the supported enum values for your controls.
Update preferences
Preference updates are partial. Send only the settings the member changed:reminders_enabled
setting. Care Radar participation and Community Group participation follow-up
also require their own separate member choices.
Save a private life moment
status: "paused" to keep the private date without creating pending
follow-up. DELETE permanently removes the date and its pending reminders.
Create a quiet day
active: false keeps the preference for later reuse;
deleting it removes the record permanently.
Error handling
Treat
404 as a final resource miss. Do not reveal whether the identifier
belongs to another member or church.
Display validation messages beside their matching fields, but keep raw request
payloads out of logs and support diagnostics.
Integration checklist
- Use hosted member sign-in and keep both credentials in secure storage.
- Build controls from the returned option arrays instead of hard-coding them.
- Require explicit contact consent.
- Show the non-emergency notice for urgent and crisis requests.
- Use
can_editandcan_withdrawfrom the API response. - Do not add Pastoral Care payloads to offline caches or analytics.
- Clear sensitive view state when the member signs out or changes church.
- Use generic push-notification copy and fetch current data after the member opens the app.
- Test with two members and two churches to verify ownership boundaries.
List care requests
Review the complete response contract and try the request.
Load care preferences
See private dates, quiet days, and supported option values.