Partnerships
Partnerships represent the partner and business-development relationships your team manages. Track partner types and tiers, move partners through a pipeline, and tie referrals and revenue back to each partner.
The Partnership Object
Section titled “The Partnership Object”| Field | Type | Description |
|---|---|---|
id | uuid | Unique identifier of the partnership. |
account_id | uuid | ID of the account that owns this partnership. |
created_by | uuid | ID of the user who created this partnership. |
name | string | Display name of the partnership. |
description | string | Free-text description of the partnership. |
stage_id | uuid? | ID of the workflow stage the partnership currently occupies. |
stage_label | string | Label of the current workflow stage (read-only, joined). |
stage_color | string | Color of the current workflow stage (read-only, joined). |
stage_closed | bool | Whether the current stage is a closed/terminal stage (read-only, joined). |
workflow_id | uuid? | ID of the partnership workflow that defines the available stages. |
company_id | uuid? | ID of the partner company, if linked. |
company_name | string | Name of the linked partner company (read-only, joined). |
assigned_to | uuid? | ID of the user the partnership is assigned to. |
assigned_name | string | Name of the assigned user (read-only, joined). |
partnership_type | string | Category of partnership. One of: referral, co_sell, integration, reseller, affiliate |
tier_id | uuid? | ID of the partnership tier, if assigned. |
tier_label | string | Label of the assigned tier (read-only, joined). |
notes | string | Internal notes about the partnership. |
tags | string[] | Freeform tags applied to the partnership. |
custom_fields | object | Account-defined custom field values as a JSON object. |
created_at | datetime | Timestamp when the partnership was created (ISO 8601). |
updated_at | datetime | Timestamp when the partnership was last updated (ISO 8601). |
Link a contact to a partnership
Section titled “Link a contact to a partnership”Endpoint: partnerships-contacts-add
List contacts linked to a partnership
Section titled “List contacts linked to a partnership”Endpoint: partnerships-contacts-list
Remove a contact from a partnership
Section titled “Remove a contact from a partnership”Endpoint: partnerships-contacts-remove
Create a new partnership
Section titled “Create a new partnership”Endpoint: partnerships-create
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Display name of the partnership. |
description | string | No | Free-text description of the partnership. |
stage_id | string? | No | ID of the initial workflow stage; defaults to the workflow’s first stage when omitted. |
workflow_id | string? | No | ID of the partnership workflow; defaults to the account’s default workflow when omitted. |
company_id | string? | No | ID of the partner company to link. |
assigned_to | string? | No | ID of the user to assign the partnership to. |
partnership_type | string | No | Category of partnership. One of: referral, co_sell, integration, reseller, affiliate |
tier_id | string? | No | ID of the partnership tier to assign. |
notes | string | No | Internal notes about the partnership. |
tags | string[] | No | Freeform tags to apply to the partnership. |
custom_fields | object? | No | Account-defined custom field values as a JSON object. |
curl -X POST https://api.driftwoodapp.com/api/partnerships-create \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{"name": "..."}'Delete a partnership
Section titled “Delete a partnership”Endpoint: partnerships-delete
Get a partnership by ID
Section titled “Get a partnership by ID”Endpoint: partnerships-get
List partnerships with filters
Section titled “List partnerships with filters”Endpoint: partnerships-list
| Field | Type | Required | Description |
|---|---|---|---|
search | string | No | Case-insensitive search over partnership name. |
tags | string[] | No | Filter to partnerships having all of these tags. |
stage_id | string? | No | Filter to partnerships in this workflow stage. |
company_id | string? | No | Filter to partnerships linked to this company. |
assigned_to | string? | No | Filter to partnerships assigned to this user. |
tier_id | string? | No | Filter to partnerships in this tier. |
partnership_type | string | No | Filter to partnerships of this type. One of: referral, co_sell, integration, reseller, affiliate |
is_closed | bool? | No | Filter by whether the partnership is in a closed stage. |
cursor | string | No | Opaque pagination cursor from a previous response. |
limit | int | No | Maximum number of partnerships to return. |
curl -X POST https://api.driftwoodapp.com/api/partnerships-list \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{}'Per-stage partnership counts for the board
Section titled “Per-stage partnership counts for the board”Endpoint: partnerships-pipeline-stats
Partner scorecard: referrals and attributed revenue
Section titled “Partner scorecard: referrals and attributed revenue”Endpoint: partnerships-scorecard
Update a partnership
Section titled “Update a partnership”Endpoint: partnerships-update
| Field | Type | Required | Description |
|---|---|---|---|
id | string | No | ID of the partnership to update. |
workflow_id | string? | No | New workflow ID; resets the stage to the new workflow’s default when stage_id is omitted. |
name | string? | No | New display name. |
description | string? | No | New description. |
stage_id | string? | No | New workflow stage ID. |
company_id | string? | No | New partner company ID; empty string clears the link. |
assigned_to | string? | No | New assignee user ID; empty string clears the assignment. |
partnership_type | string? | No | New partnership type. One of: referral, co_sell, integration, reseller, affiliate |
tier_id | string? | No | New tier ID; empty string clears the tier. |
notes | string? | No | New internal notes. |
tags | string[] | No | Replacement set of tags. |
custom_fields | object? | No | Custom field values to merge into the existing values. |
curl -X POST https://api.driftwoodapp.com/api/partnerships-update \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{}'Error Codes
Section titled “Error Codes”| Code | Description |
|---|---|
partnerships.not_found | Not found |
partnerships.name_required | Name required |
partnerships.invalid_type | Invalid type |
partnerships.invalid_workflow_id | Invalid workflow id |
partnerships.invalid_stage_id | Invalid stage id |
partnerships.invalid_stage | Invalid stage |
partnerships.invalid_company_id | Invalid company id |
partnerships.invalid_assigned_to | Invalid assigned to |
partnerships.invalid_tier_id | Invalid tier id |
partnerships.invalid_custom_fields | Invalid custom fields |
partnerships.invalid_id | Invalid id |