People
Partners
The Partners API allows you to retrieve information about partner organisations that work with your organisation. Partners might include referral agencies, community groups, or other collaborating organisations.
List Partners
Retrieve a paginated list of partners with optional filtering.
Endpoint
GET /api/v1/partners
Query Parameters
Pagination:
limit(number, default: 100, max: 250) - Maximum number of partners to returnoffset(number, default: 0) - Number of partners to skip for pagination
Filtering:
postcode(string) - Filter partners by postcode- Any other partner field can be used as a filter
Response
{
"partners": [
{
"partnerId": "partner_abc123",
"fields": [
{
"key": "name",
"label": "Organisation Name",
"value": "Community Support Centre",
"type": "text"
},
{
"key": "email",
"label": "Contact Email",
"value": "contact@communitysupport.org",
"type": "email"
},
{
"key": "phone",
"label": "Phone Number",
"value": "+44 20 7123 4567",
"type": "phone"
},
{
"key": "address",
"label": "Address",
"value": "123 High Street, London",
"type": "text"
},
{
"key": "postcode",
"label": "Postcode",
"value": "EC1A 1BB",
"type": "text"
}
]
}
],
"schemaInfo": {
"organisationId": "org123",
"schemaId": "master",
"name": "Partner Schema",
"_links": {
"self": {
"href": "/api/v1/schemas/org123"
}
}
},
"offset": 0,
"limit": 100,
"total": 28
}
Example Request
curl -X GET "https://app.plinth.org.uk/api/v1/partners?limit=50" \
-H "x-api-key: sk_your_api_key"
Filter by Postcode
curl -X GET "https://app.plinth.org.uk/api/v1/partners?postcode=EC1A" \
-H "x-api-key: sk_your_api_key"
Get Single Partner
Retrieve a specific partner by their ID.
Endpoint
GET /api/v1/partners/:partnerId
Path Parameters
partnerId(string, required) - The unique identifier of the partner
Response
{
"partner": {
"partnerId": "partner_abc123",
"fields": [
{
"key": "name",
"label": "Organisation Name",
"value": "Community Support Centre",
"type": "text"
},
{
"key": "email",
"label": "Contact Email",
"value": "contact@communitysupport.org",
"type": "email"
},
{
"key": "phone",
"label": "Phone Number",
"value": "+44 20 7123 4567",
"type": "phone"
},
{
"key": "type",
"label": "Partner Type",
"value": "Referral Agency",
"type": "select"
},
{
"key": "services",
"label": "Services Offered",
"value": ["Mental Health Support", "Housing Advice", "Benefits Support"],
"type": "multiselect"
}
]
},
"schemaInfo": {
"organisationId": "org123",
"schemaId": "master",
"_links": {
"self": {
"href": "/api/v1/schemas/org123"
}
}
}
}
Example Request
curl -X GET "https://app.plinth.org.uk/api/v1/partners/partner_abc123" \
-H "x-api-key: sk_your_api_key"
Response Fields
Each partner in the response contains:
| Field | Type | Description |
|---|---|---|
partnerId | string | Unique identifier for the partner |
fields | array | Array of field objects containing the partner's data |
Field Object Structure
| Property | Type | Description |
|---|---|---|
key | string | The field identifier |
label | string | Human-readable field name |
value | any | The field value |
type | string | Data type (text, email, phone, date, select, etc.) |
Error Responses
| Status | Description |
|---|---|
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Invalid or missing API key |
| 404 | Not Found - Partner not found |
| 500 | Internal Server Error |
