Skip to main content
HASP exposes three HTTP surfaces that matter to AI Studio integrators. They are intentionally separate: Studio management (authenticated builders on the platform), agent runtime (org subdomain — discovery + A2A invocation), and AI inference (public API gateway).

1. HASP Internal API (Studio management)

Base URL: https://app.usehasp.com These routes power AI Studio in the browser. They are defined in TypeSpec (apps/platform/api/ in the HASP monorepo) and compiled to OpenAPI (apps/platform/api/openapi.yaml). All endpoints are shown as full absolute URLs; the common path prefix is /api/internal/. Authentication: Session-backed requests from signed-in org members (same auth model as the Studio UI), not api.usehasp.com API keys. Use these from your own backend only if you mirror HASP’s session or future server-to-server contract — the supported path for customers is the Studio UI plus documented public surfaces below.

Projects & structure

MethodEndpointDescription
GET, POSThttps://app.usehasp.com/api/internal/projectsList projects; create a project
GET, PATCH, DELETEhttps://app.usehasp.com/api/internal/projects/{project_id}Project detail; update; archive
GET, POSThttps://app.usehasp.com/api/internal/projects/{project_id}/appsApps in the project
GET, POSThttps://app.usehasp.com/api/internal/projects/{project_id}/workflowsWorkflows
GET, POSThttps://app.usehasp.com/api/internal/projects/{project_id}/entitiesEntities
GET, POSThttps://app.usehasp.com/api/internal/projects/{project_id}/webhooksWebhooks
GET, PATCHhttps://app.usehasp.com/api/internal/projects/{project_id}/policyProject policy
GET, POSThttps://app.usehasp.com/api/internal/projects/{project_id}/membersList members; add / invite
PATCH, DELETEhttps://app.usehasp.com/api/internal/projects/{project_id}/members/{user_id}Member updates

Dashboards & activity

MethodEndpointDescription
GEThttps://app.usehasp.com/api/internal/orgs/{org_id}/dashboard/overviewOrg dashboard rollup
GEThttps://app.usehasp.com/api/internal/orgs/{org_id}/dashboard/projectsOrg project list for dashboard
GEThttps://app.usehasp.com/api/internal/orgs/{org_id}/dashboard/health-rollupAggregate health
GEThttps://app.usehasp.com/api/internal/projects/{project_id}/dashboard/overviewProject overview
GEThttps://app.usehasp.com/api/internal/projects/{project_id}/dashboard/activityActivity feed
GEThttps://app.usehasp.com/api/internal/projects/{project_id}/dashboard/audit-logProject audit log
GEThttps://app.usehasp.com/api/internal/projects/{project_id}/dashboard/analyticsAnalytics

Releases

MethodEndpointDescription
GET, POSThttps://app.usehasp.com/api/internal/projects/{project_id}/releasesList / create release
GEThttps://app.usehasp.com/api/internal/releases/{release_id}Release detail
POSThttps://app.usehasp.com/api/internal/releases/{release_id}/approveApprove
POSThttps://app.usehasp.com/api/internal/releases/{release_id}/cancelCancel
POSThttps://app.usehasp.com/api/internal/releases/{release_id}/deployDeploy
POSThttps://app.usehasp.com/api/internal/releases/{release_id}/rejectReject
POSThttps://app.usehasp.com/api/internal/releases/{release_id}/rollbackRollback
POSThttps://app.usehasp.com/api/internal/releases/{release_id}/emergency-rollbackEmergency rollback

Traces & workflow runs

MethodEndpointDescription
GEThttps://app.usehasp.com/api/internal/projects/{project_id}/tracesList traces
GEThttps://app.usehasp.com/api/internal/traces/{trace_id}Trace detail
POSThttps://app.usehasp.com/api/internal/traces/{trace_id}/replayReplay
GEThttps://app.usehasp.com/api/internal/traces/{trace_id}/exportExport trace
POSThttps://app.usehasp.com/api/internal/traces/{trace_id}/elevate-phiPHI-elevated view (policy-controlled)
GET, POSThttps://app.usehasp.com/api/internal/workflows/{workflow_id}/runsList runs; create run
POSThttps://app.usehasp.com/api/internal/workflows/{workflow_id}/testTest execution

Entities & records

MethodEndpointDescription
GET, PATCH, DELETEhttps://app.usehasp.com/api/internal/entities/{entity_id}Entity schema
GET, POSThttps://app.usehasp.com/api/internal/entities/{entity_id}/recordsList / create records
GET, PATCH, DELETEhttps://app.usehasp.com/api/internal/entities/{entity_id}/records/{record_id}Record CRUD

Integrations, webhooks, settings

MethodEndpointDescription
GET, POSThttps://app.usehasp.com/api/internal/orgs/{org_id}/integrationsOrg integrations
GET, PATCH, DELETEhttps://app.usehasp.com/api/internal/orgs/{org_id}/integrations/{integration_id}Integration CRUD
POSThttps://app.usehasp.com/api/internal/integrations/{integration_id}/testTest connection
GET, PATCH, DELETEhttps://app.usehasp.com/api/internal/webhooks/{webhook_id}Webhook resource
GEThttps://app.usehasp.com/api/internal/webhooks/{webhook_id}/receiptsInbound receipts
POSThttps://app.usehasp.com/api/internal/webhooks/{webhook_id}/testTest webhook
GET, PATCHhttps://app.usehasp.com/api/internal/orgs/{org_id}/settings/phi-policyOrg PHI policy
GET, PATCHhttps://app.usehasp.com/api/internal/orgs/{org_id}/settings/release-policyOrg release floor

Discovery (capability surfacing for builders)

MethodEndpointDescription
GEThttps://app.usehasp.com/api/internal/orgs/{org_id}/discovery/appsApps gallery / discovery
GEThttps://app.usehasp.com/api/internal/orgs/{org_id}/discovery/workflowsWorkflows gallery
GEThttps://app.usehasp.com/api/internal/orgs/{org_id}/discovery/agentic-patternsAgentic patterns index

Palette (authoring assist)

MethodEndpointDescription
POSThttps://app.usehasp.com/api/internal/palette/queryPalette query
POSThttps://app.usehasp.com/api/internal/palette/executePalette execute

TypeSpec source of truth

The machine-readable contract is generated from TypeSpec — not hand-maintained in this docs repo. When a path or schema changes, the platform export is authoritative. If you need exhaustive request/response shapes, use openapi.yaml from the platform tree or ask HASP for a published export.

2. Org runtime — A2A & discovery

Base URL: https://{org}.usehasp.run (or your Enterprise custom domain)
MethodEndpointDescription
GEThttps://{org}.usehasp.run/.well-known/agents.jsonPublic capability manifest (agent-callable workflows)
POSThttps://{org}.usehasp.run/a2a/{project_slug}/{workflow_slug}JSON-RPC 2.0 (method: "invoke"); Authorization: Bearer hasp_key_live_* org API key with workflow:invoke (A2A; OAuth AgentCaller verification planned)
See A2A protocol for payloads, auth, and standards alignment.

3. Public AI API (inference gateway)

Base URL: https://api.usehasp.com/v1 Inference, native chat, and Anthropic-compatible /messages live here. Authenticate with a HASP API key:
Authorization: Bearer hasp_key_live_<key>
Interactive reference and the published OpenAPI document ship with this site under AI API. Start at AI API quickstart.