On this page and tools
Resources API
Manage your directory
For organization staff: add, update, and remove entries in your own community-resource directory. This requires a team key with the directory management scope — developer keys don't have access here.
Getting access
The directory management permission is approved for one Space at a time. An admin of the Space opens /dash/integrations/api-tokens, chooses Request access next to Manage your directory, and says which site or app will use it and why. Bynefit reviews the request, usually within one business day, and emails the answer. Once it is approved, an admin can tick the permission when making a team key, and that key can call the endpoints below. Only a manager or admin of the space can hold it, and it stops applying if that person loses the role. If a request is declined, you can ask again after 7 days.
You do not have to wait to start building. A test key (bapi_tk_test_…) can
hold this permission straight away. Every call below checks your request exactly as it
would live and answers the same way, but the entries go to a private sandbox that lasts a
day, never to your directory. See Test mode.
Endpoint base
https://bynefit.com/dash/api/resources Authorization: Bearer bapi_tk_… Content-Type: application/json
List entries
curl "https://bynefit.com/dash/api/resources?status=approved&limit=50" \ -H "Authorization: Bearer bapi_tk_…"
Returns every resource owned by your organization, including pending and rejected rows. Supports status, category, limit, and offset.
Add one
curl -X POST https://bynefit.com/dash/api/resources \
-H "Authorization: Bearer bapi_tk_…" \
-H "Content-Type: application/json" \
-d '{
"name": "Atlanta Community Food Bank",
"description": "Food distribution for metro Atlanta",
"category": "food",
"address": "732 Joseph E. Lowery Blvd NW",
"phone": "(404) 892-9822",
"website": "https://www.acfb.org"
}'
The entry is added as approved immediately — you're its publisher.
Bulk import
curl -X POST https://bynefit.com/dash/api/resources/import \
-H "Authorization: Bearer bapi_tk_…" \
-H "Content-Type: application/json" \
-d '{
"resources": [
{ "name": "Food Bank", "purpose": "Meals for families", "category": "food" },
{ "name": "Legal Aid Society", "phone": "(555) 555-0199" }
]
}'
Rows with no name are skipped. Exact duplicates (same name inside your directory) are skipped. purpose is accepted as a spreadsheet-friendly alias for description. Any row failing validation rolls back the whole batch.
Update
curl -X PUT https://bynefit.com/dash/api/resources \
-H "Authorization: Bearer bapi_tk_…" \
-H "Content-Type: application/json" \
-d '{ "id": 142, "hours": "Mon–Fri 9–5" }'
Patch any subset of name, description, category, address, phone, website, hours, status, is_active.
Delete
curl -X DELETE https://bynefit.com/dash/api/resources \
-H "Authorization: Bearer bapi_tk_…" \
-H "Content-Type: application/json" \
-d '{ "id": 142 }'
Removes the row and its associated upvotes, saves, and comments.
Categories
Leave category off and Bynefit will infer one from the name
and description. Recognized categories: food,
housing, health, employment,
education, childcare, legal,
mental, transport, finance,
community, other.
Errors
| Status | When |
|---|---|
401 | Missing or unknown bearer. |
403 | Your key doesn't have the directory management scope, or the entry belongs to a different organization. |
404 | Entry not found. |
422 | Required field missing or the bulk array is empty. |