Create an SPV request
curl --request POST \
--url https://sandbox-api.zestequity.com/v1/spv-requests \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"templateId": "<your_template_id>",
"templateVersion": "1.0.0",
"attributes": {
"deal_name": "Acme Holdings Series A Syndicate",
"deal_slug": "acme-series-a-2026",
"company_id": "<your_company_id>",
"deal_type": "<your_deal_type>",
"security_type": "Equity",
"currency": "USD",
"price_per_share": {
"currency": "USD",
"value": "36.97"
},
"is_fixed_price": true,
"minimum_ticket_size": {
"currency": "USD",
"value": "1000"
},
"start_date": "2026-06-01T00:00:00Z",
"status_tag": "Live",
"deal_stage": "executing",
"investment_summary": "Subscription into Acme Holdings Series A shares.",
"deal_documents_title": "Acme Series A Deck",
"deal_documents_url": "https://example.com/acme-deck.pdf",
"deal_documents_media_type": "pdf",
"share_class_name": "Class A",
"share_class_slug": "acme-class-a",
"link_enabled": true,
"private_code": "ACME01"
}
}
'import requests
url = "https://sandbox-api.zestequity.com/v1/spv-requests"
payload = {
"templateId": "<your_template_id>",
"templateVersion": "1.0.0",
"attributes": {
"deal_name": "Acme Holdings Series A Syndicate",
"deal_slug": "acme-series-a-2026",
"company_id": "<your_company_id>",
"deal_type": "<your_deal_type>",
"security_type": "Equity",
"currency": "USD",
"price_per_share": {
"currency": "USD",
"value": "36.97"
},
"is_fixed_price": True,
"minimum_ticket_size": {
"currency": "USD",
"value": "1000"
},
"start_date": "2026-06-01T00:00:00Z",
"status_tag": "Live",
"deal_stage": "executing",
"investment_summary": "Subscription into Acme Holdings Series A shares.",
"deal_documents_title": "Acme Series A Deck",
"deal_documents_url": "https://example.com/acme-deck.pdf",
"deal_documents_media_type": "pdf",
"share_class_name": "Class A",
"share_class_slug": "acme-class-a",
"link_enabled": True,
"private_code": "ACME01"
}
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
templateId: '<your_template_id>',
templateVersion: '1.0.0',
attributes: {
deal_name: 'Acme Holdings Series A Syndicate',
deal_slug: 'acme-series-a-2026',
company_id: '<your_company_id>',
deal_type: '<your_deal_type>',
security_type: 'Equity',
currency: 'USD',
price_per_share: {currency: 'USD', value: '36.97'},
is_fixed_price: true,
minimum_ticket_size: {currency: 'USD', value: '1000'},
start_date: '2026-06-01T00:00:00Z',
status_tag: 'Live',
deal_stage: 'executing',
investment_summary: 'Subscription into Acme Holdings Series A shares.',
deal_documents_title: 'Acme Series A Deck',
deal_documents_url: 'https://example.com/acme-deck.pdf',
deal_documents_media_type: 'pdf',
share_class_name: 'Class A',
share_class_slug: 'acme-class-a',
link_enabled: true,
private_code: 'ACME01'
}
})
};
fetch('https://sandbox-api.zestequity.com/v1/spv-requests', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox-api.zestequity.com/v1/spv-requests",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'templateId' => '<your_template_id>',
'templateVersion' => '1.0.0',
'attributes' => [
'deal_name' => 'Acme Holdings Series A Syndicate',
'deal_slug' => 'acme-series-a-2026',
'company_id' => '<your_company_id>',
'deal_type' => '<your_deal_type>',
'security_type' => 'Equity',
'currency' => 'USD',
'price_per_share' => [
'currency' => 'USD',
'value' => '36.97'
],
'is_fixed_price' => true,
'minimum_ticket_size' => [
'currency' => 'USD',
'value' => '1000'
],
'start_date' => '2026-06-01T00:00:00Z',
'status_tag' => 'Live',
'deal_stage' => 'executing',
'investment_summary' => 'Subscription into Acme Holdings Series A shares.',
'deal_documents_title' => 'Acme Series A Deck',
'deal_documents_url' => 'https://example.com/acme-deck.pdf',
'deal_documents_media_type' => 'pdf',
'share_class_name' => 'Class A',
'share_class_slug' => 'acme-class-a',
'link_enabled' => true,
'private_code' => 'ACME01'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox-api.zestequity.com/v1/spv-requests"
payload := strings.NewReader("{\n \"templateId\": \"<your_template_id>\",\n \"templateVersion\": \"1.0.0\",\n \"attributes\": {\n \"deal_name\": \"Acme Holdings Series A Syndicate\",\n \"deal_slug\": \"acme-series-a-2026\",\n \"company_id\": \"<your_company_id>\",\n \"deal_type\": \"<your_deal_type>\",\n \"security_type\": \"Equity\",\n \"currency\": \"USD\",\n \"price_per_share\": {\n \"currency\": \"USD\",\n \"value\": \"36.97\"\n },\n \"is_fixed_price\": true,\n \"minimum_ticket_size\": {\n \"currency\": \"USD\",\n \"value\": \"1000\"\n },\n \"start_date\": \"2026-06-01T00:00:00Z\",\n \"status_tag\": \"Live\",\n \"deal_stage\": \"executing\",\n \"investment_summary\": \"Subscription into Acme Holdings Series A shares.\",\n \"deal_documents_title\": \"Acme Series A Deck\",\n \"deal_documents_url\": \"https://example.com/acme-deck.pdf\",\n \"deal_documents_media_type\": \"pdf\",\n \"share_class_name\": \"Class A\",\n \"share_class_slug\": \"acme-class-a\",\n \"link_enabled\": true,\n \"private_code\": \"ACME01\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox-api.zestequity.com/v1/spv-requests")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"templateId\": \"<your_template_id>\",\n \"templateVersion\": \"1.0.0\",\n \"attributes\": {\n \"deal_name\": \"Acme Holdings Series A Syndicate\",\n \"deal_slug\": \"acme-series-a-2026\",\n \"company_id\": \"<your_company_id>\",\n \"deal_type\": \"<your_deal_type>\",\n \"security_type\": \"Equity\",\n \"currency\": \"USD\",\n \"price_per_share\": {\n \"currency\": \"USD\",\n \"value\": \"36.97\"\n },\n \"is_fixed_price\": true,\n \"minimum_ticket_size\": {\n \"currency\": \"USD\",\n \"value\": \"1000\"\n },\n \"start_date\": \"2026-06-01T00:00:00Z\",\n \"status_tag\": \"Live\",\n \"deal_stage\": \"executing\",\n \"investment_summary\": \"Subscription into Acme Holdings Series A shares.\",\n \"deal_documents_title\": \"Acme Series A Deck\",\n \"deal_documents_url\": \"https://example.com/acme-deck.pdf\",\n \"deal_documents_media_type\": \"pdf\",\n \"share_class_name\": \"Class A\",\n \"share_class_slug\": \"acme-class-a\",\n \"link_enabled\": true,\n \"private_code\": \"ACME01\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox-api.zestequity.com/v1/spv-requests")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"templateId\": \"<your_template_id>\",\n \"templateVersion\": \"1.0.0\",\n \"attributes\": {\n \"deal_name\": \"Acme Holdings Series A Syndicate\",\n \"deal_slug\": \"acme-series-a-2026\",\n \"company_id\": \"<your_company_id>\",\n \"deal_type\": \"<your_deal_type>\",\n \"security_type\": \"Equity\",\n \"currency\": \"USD\",\n \"price_per_share\": {\n \"currency\": \"USD\",\n \"value\": \"36.97\"\n },\n \"is_fixed_price\": true,\n \"minimum_ticket_size\": {\n \"currency\": \"USD\",\n \"value\": \"1000\"\n },\n \"start_date\": \"2026-06-01T00:00:00Z\",\n \"status_tag\": \"Live\",\n \"deal_stage\": \"executing\",\n \"investment_summary\": \"Subscription into Acme Holdings Series A shares.\",\n \"deal_documents_title\": \"Acme Series A Deck\",\n \"deal_documents_url\": \"https://example.com/acme-deck.pdf\",\n \"deal_documents_media_type\": \"pdf\",\n \"share_class_name\": \"Class A\",\n \"share_class_slug\": \"acme-class-a\",\n \"link_enabled\": true,\n \"private_code\": \"ACME01\"\n }\n}"
response = http.request(request)
puts response.read_body{
"spvRequestSlug": "<string>",
"templateId": "<string>",
"templateVersion": "<string>",
"tenantSlug": "<string>",
"clientId": "<string>",
"attributes": {},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"rejectionReason": "<string>",
"cancelledAt": "2023-11-07T05:31:56Z",
"approvedAt": "2023-11-07T05:31:56Z",
"materialisedRefs": {
"opportunitySlug": "<string>",
"vehicleSlug": "<string>",
"spSlug": "<string>",
"spcSlug": "<string>"
},
"feesAndCarry": {
"shareClasses": [
{
"name": "<string>",
"slug": "<string>",
"managementFeePercent": "<string>",
"carryPercent": "<string>",
"setupFee": {}
}
]
}
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}SPV Requests
Create an SPV request
Submits an SPV creation request. Validation runs against the spaas-contract template indicated by templateId. On success, Zest fires spv_request.created. Admin review materialises the SPV; success fires spv_request.completed.
POST
/
v1
/
spv-requests
Create an SPV request
curl --request POST \
--url https://sandbox-api.zestequity.com/v1/spv-requests \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"templateId": "<your_template_id>",
"templateVersion": "1.0.0",
"attributes": {
"deal_name": "Acme Holdings Series A Syndicate",
"deal_slug": "acme-series-a-2026",
"company_id": "<your_company_id>",
"deal_type": "<your_deal_type>",
"security_type": "Equity",
"currency": "USD",
"price_per_share": {
"currency": "USD",
"value": "36.97"
},
"is_fixed_price": true,
"minimum_ticket_size": {
"currency": "USD",
"value": "1000"
},
"start_date": "2026-06-01T00:00:00Z",
"status_tag": "Live",
"deal_stage": "executing",
"investment_summary": "Subscription into Acme Holdings Series A shares.",
"deal_documents_title": "Acme Series A Deck",
"deal_documents_url": "https://example.com/acme-deck.pdf",
"deal_documents_media_type": "pdf",
"share_class_name": "Class A",
"share_class_slug": "acme-class-a",
"link_enabled": true,
"private_code": "ACME01"
}
}
'import requests
url = "https://sandbox-api.zestequity.com/v1/spv-requests"
payload = {
"templateId": "<your_template_id>",
"templateVersion": "1.0.0",
"attributes": {
"deal_name": "Acme Holdings Series A Syndicate",
"deal_slug": "acme-series-a-2026",
"company_id": "<your_company_id>",
"deal_type": "<your_deal_type>",
"security_type": "Equity",
"currency": "USD",
"price_per_share": {
"currency": "USD",
"value": "36.97"
},
"is_fixed_price": True,
"minimum_ticket_size": {
"currency": "USD",
"value": "1000"
},
"start_date": "2026-06-01T00:00:00Z",
"status_tag": "Live",
"deal_stage": "executing",
"investment_summary": "Subscription into Acme Holdings Series A shares.",
"deal_documents_title": "Acme Series A Deck",
"deal_documents_url": "https://example.com/acme-deck.pdf",
"deal_documents_media_type": "pdf",
"share_class_name": "Class A",
"share_class_slug": "acme-class-a",
"link_enabled": True,
"private_code": "ACME01"
}
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
templateId: '<your_template_id>',
templateVersion: '1.0.0',
attributes: {
deal_name: 'Acme Holdings Series A Syndicate',
deal_slug: 'acme-series-a-2026',
company_id: '<your_company_id>',
deal_type: '<your_deal_type>',
security_type: 'Equity',
currency: 'USD',
price_per_share: {currency: 'USD', value: '36.97'},
is_fixed_price: true,
minimum_ticket_size: {currency: 'USD', value: '1000'},
start_date: '2026-06-01T00:00:00Z',
status_tag: 'Live',
deal_stage: 'executing',
investment_summary: 'Subscription into Acme Holdings Series A shares.',
deal_documents_title: 'Acme Series A Deck',
deal_documents_url: 'https://example.com/acme-deck.pdf',
deal_documents_media_type: 'pdf',
share_class_name: 'Class A',
share_class_slug: 'acme-class-a',
link_enabled: true,
private_code: 'ACME01'
}
})
};
fetch('https://sandbox-api.zestequity.com/v1/spv-requests', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox-api.zestequity.com/v1/spv-requests",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'templateId' => '<your_template_id>',
'templateVersion' => '1.0.0',
'attributes' => [
'deal_name' => 'Acme Holdings Series A Syndicate',
'deal_slug' => 'acme-series-a-2026',
'company_id' => '<your_company_id>',
'deal_type' => '<your_deal_type>',
'security_type' => 'Equity',
'currency' => 'USD',
'price_per_share' => [
'currency' => 'USD',
'value' => '36.97'
],
'is_fixed_price' => true,
'minimum_ticket_size' => [
'currency' => 'USD',
'value' => '1000'
],
'start_date' => '2026-06-01T00:00:00Z',
'status_tag' => 'Live',
'deal_stage' => 'executing',
'investment_summary' => 'Subscription into Acme Holdings Series A shares.',
'deal_documents_title' => 'Acme Series A Deck',
'deal_documents_url' => 'https://example.com/acme-deck.pdf',
'deal_documents_media_type' => 'pdf',
'share_class_name' => 'Class A',
'share_class_slug' => 'acme-class-a',
'link_enabled' => true,
'private_code' => 'ACME01'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox-api.zestequity.com/v1/spv-requests"
payload := strings.NewReader("{\n \"templateId\": \"<your_template_id>\",\n \"templateVersion\": \"1.0.0\",\n \"attributes\": {\n \"deal_name\": \"Acme Holdings Series A Syndicate\",\n \"deal_slug\": \"acme-series-a-2026\",\n \"company_id\": \"<your_company_id>\",\n \"deal_type\": \"<your_deal_type>\",\n \"security_type\": \"Equity\",\n \"currency\": \"USD\",\n \"price_per_share\": {\n \"currency\": \"USD\",\n \"value\": \"36.97\"\n },\n \"is_fixed_price\": true,\n \"minimum_ticket_size\": {\n \"currency\": \"USD\",\n \"value\": \"1000\"\n },\n \"start_date\": \"2026-06-01T00:00:00Z\",\n \"status_tag\": \"Live\",\n \"deal_stage\": \"executing\",\n \"investment_summary\": \"Subscription into Acme Holdings Series A shares.\",\n \"deal_documents_title\": \"Acme Series A Deck\",\n \"deal_documents_url\": \"https://example.com/acme-deck.pdf\",\n \"deal_documents_media_type\": \"pdf\",\n \"share_class_name\": \"Class A\",\n \"share_class_slug\": \"acme-class-a\",\n \"link_enabled\": true,\n \"private_code\": \"ACME01\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox-api.zestequity.com/v1/spv-requests")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"templateId\": \"<your_template_id>\",\n \"templateVersion\": \"1.0.0\",\n \"attributes\": {\n \"deal_name\": \"Acme Holdings Series A Syndicate\",\n \"deal_slug\": \"acme-series-a-2026\",\n \"company_id\": \"<your_company_id>\",\n \"deal_type\": \"<your_deal_type>\",\n \"security_type\": \"Equity\",\n \"currency\": \"USD\",\n \"price_per_share\": {\n \"currency\": \"USD\",\n \"value\": \"36.97\"\n },\n \"is_fixed_price\": true,\n \"minimum_ticket_size\": {\n \"currency\": \"USD\",\n \"value\": \"1000\"\n },\n \"start_date\": \"2026-06-01T00:00:00Z\",\n \"status_tag\": \"Live\",\n \"deal_stage\": \"executing\",\n \"investment_summary\": \"Subscription into Acme Holdings Series A shares.\",\n \"deal_documents_title\": \"Acme Series A Deck\",\n \"deal_documents_url\": \"https://example.com/acme-deck.pdf\",\n \"deal_documents_media_type\": \"pdf\",\n \"share_class_name\": \"Class A\",\n \"share_class_slug\": \"acme-class-a\",\n \"link_enabled\": true,\n \"private_code\": \"ACME01\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox-api.zestequity.com/v1/spv-requests")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"templateId\": \"<your_template_id>\",\n \"templateVersion\": \"1.0.0\",\n \"attributes\": {\n \"deal_name\": \"Acme Holdings Series A Syndicate\",\n \"deal_slug\": \"acme-series-a-2026\",\n \"company_id\": \"<your_company_id>\",\n \"deal_type\": \"<your_deal_type>\",\n \"security_type\": \"Equity\",\n \"currency\": \"USD\",\n \"price_per_share\": {\n \"currency\": \"USD\",\n \"value\": \"36.97\"\n },\n \"is_fixed_price\": true,\n \"minimum_ticket_size\": {\n \"currency\": \"USD\",\n \"value\": \"1000\"\n },\n \"start_date\": \"2026-06-01T00:00:00Z\",\n \"status_tag\": \"Live\",\n \"deal_stage\": \"executing\",\n \"investment_summary\": \"Subscription into Acme Holdings Series A shares.\",\n \"deal_documents_title\": \"Acme Series A Deck\",\n \"deal_documents_url\": \"https://example.com/acme-deck.pdf\",\n \"deal_documents_media_type\": \"pdf\",\n \"share_class_name\": \"Class A\",\n \"share_class_slug\": \"acme-class-a\",\n \"link_enabled\": true,\n \"private_code\": \"ACME01\"\n }\n}"
response = http.request(request)
puts response.read_body{
"spvRequestSlug": "<string>",
"templateId": "<string>",
"templateVersion": "<string>",
"tenantSlug": "<string>",
"clientId": "<string>",
"attributes": {},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"rejectionReason": "<string>",
"cancelledAt": "2023-11-07T05:31:56Z",
"approvedAt": "2023-11-07T05:31:56Z",
"materialisedRefs": {
"opportunitySlug": "<string>",
"vehicleSlug": "<string>",
"spSlug": "<string>",
"spcSlug": "<string>"
},
"feesAndCarry": {
"shareClasses": [
{
"name": "<string>",
"slug": "<string>",
"managementFeePercent": "<string>",
"carryPercent": "<string>",
"setupFee": {}
}
]
}
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "ex: Something went wrong",
"errorId": "<string>",
"validationErrors": [
{
"attribute": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Body
application/json
Contract template id provided during onboarding.
Example:
"<your_template_id>"
Contract template version (e.g. '1.0.0').
Example:
"1.0.0"
Flat attribute map validated against the template.
Example:
{ "deal_name": "Acme Holdings Series A Syndicate", "deal_slug": "acme-series-a-2026", "company_id": "<your_company_id>", "deal_type": "<your_deal_type>", "security_type": "Equity", "currency": "USD", "price_per_share": { "currency": "USD", "value": "36.97" }, "is_fixed_price": true, "minimum_ticket_size": { "currency": "USD", "value": "1000" }, "start_date": "2026-06-01T00:00:00Z", "status_tag": "Live", "deal_stage": "executing", "investment_summary": "Subscription into Acme Holdings Series A shares.", "deal_documents_title": "Acme Series A Deck", "deal_documents_url": "https://example.com/acme-deck.pdf", "deal_documents_media_type": "pdf", "share_class_name": "Class A", "share_class_slug": "acme-class-a", "link_enabled": true, "private_code": "ACME01" }
Response
Successful Response
An enumeration.
Available options:
pending-review, approved, rejected, cancelled Show child attributes
Show child attributes
Show child attributes
Show child attributes
⌘I