Closes one of the caller org's fundraising rounds, recording the close date and…
Closes one of the caller org's fundraising rounds, recording the close date and moving its status to CLOSED.
POST /v1/captable/rounds/{id}/close
| Address | https://api.hanzo.ai/v1/captable/rounds/{id}/close |
| Method | POST |
| Operation | post_captable_rounds_by_id_close |
| Auth | Authorization: Bearer $HANZO_API_KEY |
Closes one of the caller org's fundraising rounds, recording the close date and moving its status to CLOSED. Only an OPEN round can be closed: a round that is already closed — like an id this org does not hold — is not found. Closing a round does not change what was invested in it.
Request
3 fields, body application/json (required).
| Field | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes | ID is the round to close. It is the path segment: the URL is the addressing authority, and the org it is resolved in comes from the caller's principal, so an… |
closeDate | body | any | — | CloseDate is the date to record the round as closed on. Optional: omitted, null or empty records TODAY. |
id | body | string | — | ID is the round to close. It is the path segment: the URL is the addressing authority, and the org it is resolved in comes from the caller's principal, so an… |
Response
| Status | Body | Meaning |
|---|---|---|
200 | captableUpdated | ok |
200 body — 2 fields.
| Field | In | Type | Always | Description |
|---|---|---|---|---|
message | body | string | — | Message is the human sentence the cap table wrote, e.g. |
success | body | boolean | — | Success is true when the update was applied. |
Failure carries the platform error shape — see Errors.
Examples
hanzo captable rounds close <id>import { Configuration, CaptableApi } from 'hanzoai';
const api = new CaptableApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.postCaptableRoundsByIdClose({ id: 'id', closeDate: "<closeDate>", id: "<id>" });from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import CaptableApi
client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = CaptableApi(client).post_captable_rounds_by_id_close(id='id', close_date="<closeDate>", id="<id>")cfg := cloud.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := cloud.NewAPIClient(cfg)
resp, _, err := client.CaptableAPI.PostCaptableRoundsByIdClose(context.Background()).Execute()
if err != nil {
return err
}use hanzo_cloud::apis::{configuration::Configuration, captable_api};
let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();
let result = captable_api::post_captable_rounds_by_id_close(&cfg, Default::default()).await?;import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.CaptableApi;
ApiClient client = new ApiClient();
client.setRequestInterceptor(b -> b.header("Authorization", "Bearer " + System.getenv("HANZO_API_KEY")));
var result = new CaptableApi(client).postCaptableRoundsByIdClose();curl -X POST https://api.hanzo.ai/v1/captable/rounds/<id>/close \
-H "Authorization: Bearer $HANZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"closeDate": "<closeDate>",
"id": "<id>"
}'The door reaches captable through the captable tool, which names its 31 operations with its own verbs — this one among them, under a name only the door declares. describe explains any of them:
curl -X POST https://api.hanzo.ai/v1/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe",
"arguments": {
"op": "list_captable_classes"
}
}
}'How is this guide?