Get projects

Returns one Sentry project of the caller's org.

GET /v1/o11y/sentinel/projects/{id}

Addresshttps://api.hanzo.ai/v1/o11y/sentinel/projects/{id}
MethodGET
Operationget_o11y_sentinel_projects_by_id
AuthAuthorization: Bearer $HANZO_API_KEY

Returns one Sentry project of the caller's org.

Callers need the viewer role; the runtime's own gate enforces it.

Request

1 field.

FieldInTypeRequiredDescription
idpathstringyesID is the project id.

Response

StatusBodyMeaning
200o11y.O11ySentryProjectOutok
202Approvalheld for approval
defaultproblem-detailsrefused

200 body — 9 fields.

FieldInTypeAlwaysDescription
databodyo11y.O11ySentryProject—
data.createdAtbodystring (date-time)—CreatedAt is when the project was created.
data.idbodystring—ID is the project id.
data.namebodystring—Name is the project's display name.
data.platformbodystring—Platform is the reporting runtime, e.g. go, python, javascript.
data.slugbodystring—Slug is the project's short name.
data.statusbodystring—Status is the project's lifecycle state: active or disabled.
data.updatedAtbodystring (date-time)—UpdatedAt is when the project last changed.
statusbodystring—Status is "success".

Failure carries the platform error shape — see Errors.

Examples

hanzo o11y sentinel projects get <id>
import { Configuration, O11yApi } from 'hanzoai';

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

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

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

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

let result = o11y_api::get_o11y_sentinel_projects_by_id(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.O11yApi;

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

var result = new O11yApi(client).getO11ySentinelProjectsById();
curl https://api.hanzo.ai/v1/o11y/sentinel/projects/<id> \
  -H "Authorization: Bearer $HANZO_API_KEY"

MCP reaches o11y through the o11y tool, which names its 307 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_o11y_autocomplete_aggregate_attributes"
         }
       }
     }'

O11y API · All Hanzo APIs · Interactive reference

Was this page useful?