List portfolio

Returns the studio's portfolio operations rollup: stage, status, checklist progress, decisions waiting on people, latest evidence, failed runs, and spend for every venture operated by the studio organization.

GET /v1/guide/portfolio

Addresshttps://api.hanzo.ai/v1/guide/portfolio
MethodGET
Operationget_guide_portfolio
AuthAuthorization: Bearer $HANZO_API_KEY

Returns the studio's portfolio operations rollup: stage, status, checklist progress, decisions waiting on people, latest evidence, failed runs, and spend for every venture operated by the studio organization.

Request

GET /v1/guide/portfolio takes no parameters and no body — the credential is the whole request.

Response

StatusBodyMeaning
200guide.portfolioViewok
defaultproblem-detailsrefused

200 body — 50 fields.

FieldInTypeAlwaysDescription
activeVenturesbodyinteger (int64)—ActiveVentures is how many ventures are currently in active execution.
failedRunsbodyinteger (int64)—FailedRuns is the total count of failed runs across all ventures in the portfolio.
formedVenturesbodyinteger (int64)—FormedVentures is how many ventures have advanced to legal entity formation.
offboardedVenturesbodyinteger (int64)—OffboardedVentures is how many ventures have been offboarded from the studio.
pausedVenturesbodyinteger (int64)—PausedVentures is how many ventures are currently paused.
pendingDecisionsbodyinteger (int64)—PendingDecisions is the total count of decisions, role proposals, and external actions waiting on people across the portfolio.
studioOrgbodystring—StudioOrg is the studio organization whose portfolio is summarized.
totalBudgetMicroUSDbodyinteger (int64)—TotalBudgetMicroUSD is the sum of initial budgets allocated across all ventures in integer micro-USD.
totalSpendMicroUSDbodyinteger (int64)—TotalSpendMicroUSD is the cumulative spend across all ventures in integer micro-USD.
totalVenturesbodyinteger (int64)—TotalVentures is the total number of ventures registered in the studio portfolio.
venturesbodyguide.VentureRecord[]—Ventures is the per-venture operational rollup ordered by creation time.
ventures[].createdAtbodyinteger (int64)—CreatedAt is when the venture was first registered in the portfolio, as Unix seconds.
ventures[].evidencebodystring[]—Evidence lists the source citations and evidence URIs attached to the venture.
ventures[].failedRunsbodyinteger (int64)—FailedRuns is how many specialist or automation runs have failed and await retry or review.
ventures[].formationIdbodystring—FormationID is the legal entity formation identifier from /v1/company once the venture advances to formation.
ventures[].importedbodyboolean—Imported is true when the venture was imported into the studio rather than started from scratch.
ventures[].initialBudgetMicroUSDbodyinteger (int64)—InitialBudgetMicroUSD is the initial venture budget in integer micro-USD, allocated at creation.
ventures[].latestEvidencebodystring—LatestEvidence is the most recently recorded evidence citation or URI for this venture.
ventures[].membersbodystring[]—Members lists the teammate subjects explicitly assigned access to this venture.
ventures[].ownerbodystring—Owner is the venture lead (person or lead agent handle) accountable for executing the playbook.
ventures[].pendingDecisionsbodyinteger (int64)—PendingDecisions is how many research decisions, role proposals, or external actions await human approval.
ventures[].playbookVersionbodystring—PlaybookVersion is the version string of the Guide curriculum enrolled for this venture.
ventures[].progressbodyguide.progressView—
ventures[].progress.donebodyinteger (int64)—Done counts steps that are FINISHED — done and skipped alike, since a step the org deliberately passed over is not still owed.
ventures[].progress.nextbodystring—Next is the id of the step to do next: the first available, unfinished step in authoring order.
ventures[].progress.percentbodyinteger (int64)—Percent is done/total as a whole number 0-100, rounded, so a caller renders a bar without recomputing it.
ventures[].progress.totalbodyinteger (int64)—Total is how many steps this org's journey holds — the ENABLED steps of the playbook, so it shrinks when an operator disables one and does not match the authored step count.
ventures[].resumedbodyboolean—Resumed is true when a repeated or interrupted create call resumed an existing venture without duplicating budget or team.
ventures[].setupbodyguide.VentureSetupState—
ventures[].setup.budgetAllocatedbodyboolean—BudgetAllocated is true once the initial micro-USD budget has been committed, preventing duplicate allocation.
ventures[].setup.membersbodystring[]—Members lists the teammate subjects explicitly assigned access to this venture.
ventures[].setup.orgProvisionedbodyboolean—OrgProvisioned is true once the venture's isolated organization store has been opened.
ventures[].setup.playbookEnrolledbodyboolean—PlaybookEnrolled is true once the versioned curriculum has been persisted in the venture's store.
ventures[].setup.revokedMembersbodystring[]—RevokedMembers lists teammate subjects whose seat access to this venture has been revoked.
ventures[].setup.teamSeededbodyboolean—TeamSeeded is true once the venture's team roster has been enrolled.
ventures[].slugbodystring—Slug is the venture's unique handle inside the studio portfolio.
ventures[].spendMicroUSDbodyinteger (int64)—SpendMicroUSD is the cumulative spend recorded against this venture in integer micro-USD.
ventures[].sponsorbodystring—Sponsor is the studio partner or executive sponsoring the venture.
ventures[].stagebodystring—Stage is the venture's position in the studio funnel: intake, discovery, validation, formation, or scaling.
ventures[].statusbodystring—Status is the venture's operating state: active, paused, forming, formed, or offboarded.
ventures[].studioOrgbodystring—StudioOrg is the parent studio organization operating the portfolio.
ventures[].templatesbodyguide.Page[]—Templates are the shared studio templates from the playbook visible in this venture.
ventures[].templates[].bodybodystring—Body is the reusable prompt or snippet itself.
ventures[].templates[].enabledbodyboolean—Enabled is the admin lever.
ventures[].templates[].idbodystring—ID is the slug a step references to pull this template in.
ventures[].templates[].titlebodystring—Title names the template in the authoring plane and in a picker.
ventures[].thesisbodystring—Thesis is the falsifiable venture hypothesis being tested before entity formation.
ventures[].titlebodystring—Title is the human-readable name of the venture.
ventures[].updatedAtbodyinteger (int64)—UpdatedAt is when the venture record was last updated, as Unix seconds.
ventures[].ventureOrgbodystring—VentureOrg is the isolated organization namespace holding this venture's private progress, documents, runs, and secrets.

Failure carries the platform error shape — see Errors.

Examples

hanzo guide portfolio
import { Configuration, GuideApi } from 'hanzoai';

const api = new GuideApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.getGuidePortfolio();
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import GuideApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = GuideApi(client).get_guide_portfolio()
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.GuideAPI.GetGuidePortfolio(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, guide_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = guide_api::get_guide_portfolio(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.GuideApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new GuideApi(client).getGuidePortfolio();

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 https://api.hanzo.ai/v1/guide/portfolio \
  -H "Authorization: Bearer $HANZO_API_KEY"

Tool guide, op get_guide_portfolio — POST the JSON-RPC envelope to https://api.hanzo.ai/v1/mcp.

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "guide",
         "arguments": {
           "op": "get_guide_portfolio",
           "input": {}
         }
       }
     }'

Guide API · All Hanzo APIs · Interactive reference

Was this page useful?
Broken link or missing step? Drop it in #docs on Discord or open a PR.