Get a step's form implementation for an investor
/transaction-workflows/steps/{stepId}/form-implementations/{investorId}The form implementation for a workflow step and a specific investor (deals DB transaction_user_form_completion), keyed by step, deal and transaction user. Unifies the legacy my-form-implementation and investor-form-implementation reads behind an explicit investor id.
{investorId} is the investor's user guid by default. To look up an external investor (one with no platform user), pass the query param user=external, in which case {investorId} is instead that external investor's own transaction-user id, and they must have had an event or investment on the deal, deleted ones included. Any other user value returns 422.
The required dealId query param selects the deal. trancheId picks the tranche and must be one of the deal's tranches, otherwise 422. Without it, the implementation in the deal's active tranche comes first, then the most recently completed. The step, deal and investor are resolved leak-safe (unknown / cross-org ids) → 404.
Path parameters
The step id.
The investor's user id, unless
user=externalis passed, in which case it is the external investor's transaction-user id.
Query parameters
- One of:
By default {investorId} is the user id. Pass user=external to address an external investor by their transaction-user id.
external The deal the implementation belongs to.
One of the deal's tranches. Defaults to the deal's active tranche.
Responses
{
"data": {
"id": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
"workflow_step_id": "5f6a7b8c-9d0e-4f1a-8b2c-3d4e5f6a7b8c",
"deal_id": "9f8e7d6c-5b4a-4938-8271-6a5b4c3d2e1f",
"transaction_user_id": "8d9e0f1a-2b3c-4d5e-8f6a-7b8c9d0e1f2a",
"tranche_id": null,
"form_implementation_id": "2b3c4d5e-6f7a-4b8c-9d0e-1f2a3b4c5d6e",
"completed_at": null,
"document_generated": false,
"generated_attachment_id": null
}
}Authorization failed. error.code is one of org_disabled,
ip_blocked, missing_scope, scope_disabled, user_disabled.
Request validation failed (HTTP 422). The body is either the Laravel
validation envelope (message + field-keyed errors) or the API error
envelope for domain rejections (e.g. form_type_not_supported,
folder_locked, parent_not_found, folder_not_empty).
Examples
curl https://your-org-domain/kong/core/api/v2/transaction-workflows/steps/{stepId}/form-implementations/{investorId}?dealId={dealId}\
-H "Authorization: Bearer $HELM_API_KEY"\
-H "Content-Type: application/json"