Update Community Coordination Profile
curl --request PUT \
--url https://api.thefaithapp.com/v1/community/coordination-profile \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"skills_offered": [
"Carpentry"
],
"skills_needed": [
"Meal preparation"
],
"ride_role": "offer",
"ride_origin_zone": "North Parish",
"ride_destination_zone": "Main Campus",
"ride_days": [
"sunday"
]
}
'const options = {
method: 'PUT',
headers: {
'X-API-Key': '<api-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
skills_offered: ['Carpentry'],
skills_needed: ['Meal preparation'],
ride_role: 'offer',
ride_origin_zone: 'North Parish',
ride_destination_zone: 'Main Campus',
ride_days: ['sunday']
})
};
fetch('https://api.thefaithapp.com/v1/community/coordination-profile', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.thefaithapp.com/v1/community/coordination-profile"
payload = {
"skills_offered": ["Carpentry"],
"skills_needed": ["Meal preparation"],
"ride_role": "offer",
"ride_origin_zone": "North Parish",
"ride_destination_zone": "Main Campus",
"ride_days": ["sunday"]
}
headers = {
"X-API-Key": "<api-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text){
"status": "Success",
"data": {
"coordination": {
"available": true,
"pilot_keys": [
"skills_reciprocity",
"recurring_rides"
],
"profile": {
"id": 42,
"skills_offered": [
"carpentry"
],
"skills_needed": [
"meal preparation"
],
"skills_help_count": 2,
"last_skills_helped_at": "2026-08-24T09:30:00.000000Z",
"ride_role": "offer",
"ride_origin_zone": "North Parish",
"ride_destination_zone": "Main Campus",
"ride_days": [
"sunday"
],
"household_stage": "midlife",
"can_offer": [
"phone setup"
],
"would_value": [
"gardening advice"
],
"neighborhood_zone": "Maple Ward",
"active": true,
"updated_at": "2026-08-28T09:30:00.000000Z"
},
"active_connections": 1,
"guardrails": {
"human_review_required": true,
"precise_location_collected": false,
"numeric_risk_score_created": false,
"staff_contact_before_introduction": true
}
}
}
}Community Preferences & Research
Update Community Coordination Profile
Updates only the coordination details covered by the member’s current consent. Locations must remain approximate, and all resulting suggestions require staff review before an introduction.
PUT
/
v1
/
community
/
coordination-profile
Update Community Coordination Profile
curl --request PUT \
--url https://api.thefaithapp.com/v1/community/coordination-profile \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"skills_offered": [
"Carpentry"
],
"skills_needed": [
"Meal preparation"
],
"ride_role": "offer",
"ride_origin_zone": "North Parish",
"ride_destination_zone": "Main Campus",
"ride_days": [
"sunday"
]
}
'const options = {
method: 'PUT',
headers: {
'X-API-Key': '<api-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
skills_offered: ['Carpentry'],
skills_needed: ['Meal preparation'],
ride_role: 'offer',
ride_origin_zone: 'North Parish',
ride_destination_zone: 'Main Campus',
ride_days: ['sunday']
})
};
fetch('https://api.thefaithapp.com/v1/community/coordination-profile', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.thefaithapp.com/v1/community/coordination-profile"
payload = {
"skills_offered": ["Carpentry"],
"skills_needed": ["Meal preparation"],
"ride_role": "offer",
"ride_origin_zone": "North Parish",
"ride_destination_zone": "Main Campus",
"ride_days": ["sunday"]
}
headers = {
"X-API-Key": "<api-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text){
"status": "Success",
"data": {
"coordination": {
"available": true,
"pilot_keys": [
"skills_reciprocity",
"recurring_rides"
],
"profile": {
"id": 42,
"skills_offered": [
"carpentry"
],
"skills_needed": [
"meal preparation"
],
"skills_help_count": 2,
"last_skills_helped_at": "2026-08-24T09:30:00.000000Z",
"ride_role": "offer",
"ride_origin_zone": "North Parish",
"ride_destination_zone": "Main Campus",
"ride_days": [
"sunday"
],
"household_stage": "midlife",
"can_offer": [
"phone setup"
],
"would_value": [
"gardening advice"
],
"neighborhood_zone": "Maple Ward",
"active": true,
"updated_at": "2026-08-28T09:30:00.000000Z"
},
"active_connections": 1,
"guardrails": {
"human_review_required": true,
"precise_location_collected": false,
"numeric_risk_score_created": false,
"staff_contact_before_introduction": true
}
}
}
}Authorizations
Public client key copied from Developer Access. The member bearer token authenticates the request.
Member access token returned by POST /v1/auth/token.
Body
application/json
Maximum array length:
20Required string length:
2 - 80Maximum array length:
20Required string length:
2 - 80Available options:
none, offer, need, both Required string length:
2 - 100Required string length:
2 - 100Maximum array length:
7Available options:
monday, tuesday, wednesday, thursday, friday, saturday, sunday Available options:
young_adult, young_family, midlife, older_adult, multi_generational, null Maximum array length:
20Required string length:
2 - 80Maximum array length:
20Required string length:
2 - 80Required string length:
2 - 100Was this page helpful?