Create request
Adds betas to those the signed-in caller asked for, creating the record when there is none.
POST /v1/marketing/beta/request
| Address | https://api.hanzo.ai/v1/marketing/beta/request |
| Method | POST |
| Operation | post_marketing_beta_request |
| Auth | Authorization: Bearer $HANZO_API_KEY |
Adds betas to those the signed-in caller asked for, creating the record when there is none. Each new id is stamped with the time it was asked for and stated on the event plane as beta_requested.
Request
1 field, body application/json (required).
| Field | In | Type | Required | Description |
|---|---|---|---|---|
betas | body | string[] | — | Betas are the ids of the unreleased products to add. |
Response
| Status | Body | Meaning |
|---|---|---|
200 | marketing.Beta | ok |
default | problem-details | refused |
200 body — 21 fields.
| Field | In | Type | Always | Description |
|---|---|---|---|---|
actions | body | marketing.BetaAction[] | — | Actions are the actions that earned points, oldest first. |
actions[].action | body | string | — | Action is what was done: star, verified on GitHub, or follow, counted on trust. |
actions[].at | body | string | — | At is when it was counted, RFC 3339 in UTC. |
actions[].points | body | integer (int64) | — | Points is what the action earned. |
actions[].target | body | string | — | Target is what it was done to: a repository (hanzoai/ai) for a star, a founder's link (zach/github) for a follow. |
answers | body | marketing.BetaAnswer[] | — | Answers are the application's answers. |
answers[].answer | body | string[] | — | Answer is what the person answered: one entry for a typed answer or a single choice, one entry per option for several. |
answers[].id | body | string | — | ID is the question's id on the form, such as "builds". |
answers[].question | body | string | — | Question is the question as the form asked it. |
applied | body | boolean | — | Applied is whether the account has applied: its record names a program. |
betas | body | string[] | — | Betas are the ids of the unreleased products asked for. |
github | body | string | — | GitHub is the GitHub login the account's stars are counted for. |
lead | body | string | — | Lead is the reference the application was filed under as a lead. |
of | body | integer (int64) | — | Of is how many people are on the waitlist, as the board counts them. |
place | body | integer (int64) | — | Place is the record's place on the waitlist, 1 first; 0 with no record, or when the board did not answer. |
points | body | integer (int64) | — | Points is the sum of what Actions earned. |
program | body | string | — | Program is the program applied to: beta, research or partner. |
requested | body | object | — | Requested is when each of Betas was asked for, RFC 3339 in UTC, by id. |
requested.* | body | string | — | |
score | body | integer (int64) | — | Score is what the waitlist ranks the record by: Points, the account's referrals and its token usage (GET /v1/leaderboard/beta says how). |
since | body | string | — | Since is when the record began, as the CRM stamped it; empty with no record. |
Failure carries the platform error shape — see Errors.
Examples
CLI
SDK
HTTP
MCP
hanzo marketing beta request.ts
.py
.go
.rs
.java
import { Configuration, MarketingApi } from 'hanzoai';
const api = new MarketingApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.postMarketingBetaRequest({ betas: ["<betas>"] });from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import MarketingApi
client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = MarketingApi(client).post_marketing_beta_request(betas=["<betas>"])cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)
resp, _, err := client.MarketingAPI.PostMarketingBetaRequest(context.Background()).Execute()
if err != nil {
return err
}use hanzo_client::apis::{configuration::Configuration, marketing_api};
let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();
let result = marketing_api::post_marketing_beta_request(&cfg, Default::default()).await?;import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.MarketingApi;
ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));
var result = new MarketingApi(client).postMarketingBetaRequest();curl -X POST https://api.hanzo.ai/v1/marketing/beta/request \
-H "Authorization: Bearer $HANZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"betas": [
"<betas>"
]
}'MCP reaches marketing through the marketing tool, which names its 82 operations with its own verbs — this one among them, under a name only MCP 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_marketing_audiences"
}
}
}'Was this page useful?
Broken link or missing step? Drop it in #docs on Discord or open a PR.