Records a request to read what an independent auditor signed, and answers with…
Records a request to read what an independent auditor signed, and answers with its id. The org that owns the centre decides.
POST /v1/dataroom/trust/center/{slug}/requests
| Address | https://api.hanzo.ai/v1/dataroom/trust/center/{slug}/requests |
| Method | POST |
| Operation | post_dataroom_trust_center_by_slug_requests |
| Auth | Authorization: Bearer $HANZO_API_KEY |
Records a request to read what an independent auditor signed, and answers with its id.
The org that owns the centre decides. Nothing is released here and no link is minted: this writes the ask down, which is the whole promise the form makes. The write is the answer — a request that could not be stored is an error, never a receipt, so a form can never appear to have been sent and be gone.
email is required and is the ONLY address the eventual grant will admit, so an
address the asker cannot read is an ask that cannot be answered. Where the centre
states an NDA, accept must be true and the text in force is recorded verbatim
against the request.
Asking twice for the same thing from the same address is the SAME ask: the second answers with the first's id rather than opening a second row, which is also what keeps an anonymous door from filling a tenant's store.
Request
7 fields, body application/json (required).
| Field | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | yes | Slug is the centre's public address, taken from the path. |
accept | body | boolean | — | Accept must be true when the centre states an NDA. |
email | body | string | — | Email is where the grant will be sent, and the ONLY address the resulting link admits. |
item | body | string | — | Item names one published item to ask for. |
party | body | string | — | Party is the company the asker is from. |
reason | body | string | — | Reason is why they want it. |
slug | body | string | — | Slug is the centre's public address, taken from the path. |
Response
| Status | Body | Meaning |
|---|---|---|
200 | trustAsked | ok |
200 body — 2 fields.
| Field | In | Type | Always | Description |
|---|---|---|---|---|
id | body | string | — | ID is the request's id, so the asker can be told about it later. |
state | body | string | — | State is always "open": recording an ask decides nothing. |
Failure carries the platform error shape — see Errors.
Examples
hanzo has no subcommand for this operation — the CLI serves only what cloud's live route table confirms. Use HTTP or an SDK.
import { Configuration, DataroomApi } from 'hanzoai';
const api = new DataroomApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.postDataroomTrustCenterBySlugRequests({ slug: 'slug', accept: false, email: "<email>" });from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import DataroomApi
client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = DataroomApi(client).post_dataroom_trust_center_by_slug_requests(slug='slug', accept=False, email="<email>")cfg := cloud.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := cloud.NewAPIClient(cfg)
resp, _, err := client.DataroomAPI.PostDataroomTrustCenterBySlugRequests(context.Background()).Execute()
if err != nil {
return err
}use hanzo_cloud::apis::{configuration::Configuration, dataroom_api};
let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();
let result = dataroom_api::post_dataroom_trust_center_by_slug_requests(&cfg, Default::default()).await?;import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.DataroomApi;
ApiClient client = new ApiClient();
client.setRequestInterceptor(b -> b.header("Authorization", "Bearer " + System.getenv("HANZO_API_KEY")));
var result = new DataroomApi(client).postDataroomTrustCenterBySlugRequests();The method above is the one at the current release of the document. [email protected] (npm) and [email protected] (PyPI) were generated from an earlier release, where this operation carried a different id, so it spells the method differently — regenerating the clients is what makes the two agree. SDKs →
curl -X POST https://api.hanzo.ai/v1/dataroom/trust/center/<slug>/requests \
-H "Authorization: Bearer $HANZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"accept": false,
"email": "<email>"
}'The door reaches dataroom through the dataroom tool, which names its 17 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": "get_dataroom_analytic_dataroom"
}
}
}'How is this guide?