Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.thefaithapp.com/llms.txt

Use this file to discover all available pages before exploring further.

Welcome to the TheFaithApp API

TheFaithApp v1 lets third-party apps authenticate members with Firebase, subscribe them to a church, and read church-scoped content such as sermons, devotionals, events, notifications, and bulletins. Examples in this reference were captured from the current v1 implementation and then trimmed for clarity and to remove sensitive fields.

Base URL

https://api.thefaithapp.com
Use https://api.thefaithapp.com for production integrations and for the default Mintlify Try it experience in this docs workspace.

Authentication

Every /v1 request requires both headers below:
X-API-Key: your-client-api-key
Authorization: Bearer your-firebase-id-token
  • X-API-Key identifies the church or partner app.
  • Authorization identifies the signed-in member.
  • Firebase ID tokens expire regularly, so your client should refresh them automatically.

Using This Reference

  1. Open any endpoint page from the left navigation.
  2. Click Try it to test the route from the docs UI.
  3. Paste a Firebase bearer token when Mintlify prompts for auth.
  4. Fill the X-API-Key field shown in the request inputs section.
  5. Send the request and compare the live response with the example on the page.

Typical Flow

  1. Upload your Firebase service account JSON in the dashboard settings.
  2. Copy the generated API key from the dashboard.
  3. Sign the end user into Firebase in your app.
  4. Send the Firebase ID token and API key to POST /v1/subscribe.
  5. Use the other v1 endpoints to load member, church, content, and notification data.

Example Request

curl -X POST https://api.thefaithapp.com/v1/subscribe \
  -H "X-API-Key: your-client-api-key" \
  -H "Authorization: Bearer your-firebase-id-token" \
  -H "Content-Type: application/json" \
  -d '{"fcm_token":"user-device-fcm-token"}'

Common Headers

Some endpoints also support contextual headers:
  • X-Client-Date: resolves devotionals for a specific client-side date.
  • X-Client-Timezone: resolves devotionals and home content using the user’s timezone.

Main Endpoint Groups

  • Core experience: user, home, app-customization, subscribe
  • Content: audios, videos, streamings, devotionals
  • Engagement: favorites, bookmarks
  • Church directory: church, churches, churches/public/{uuid}, branches
  • Events: events, events/{event}/register
  • Notifications: notifications, notifications/user
  • Profile and bulletin endpoints: member, bulletins

Error Handling

  • 401 Unauthorized: missing or invalid bearer token.
  • 404 Not Found: missing church, member, or requested resource.
  • 422 Unprocessable Entity: validation errors in request payloads.
  • 500 Internal Server Error: unexpected server-side failure.
Always inspect the JSON response body for message, error, or errors fields when a request fails.