For Agents
Manage products, features, releases, ideas, goals, and initiatives in an Aha! workspace — full CRUD across the product hierarchy plus comments, tags, and workflow state.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Aha! API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Aha! API.
Create and update features, releases, and requirements within a product
Promote ideas into features and link them to releases or initiatives
Track goals and initiatives across products with progress and status
Manage epics that group features across releases
GET STARTED
Use for: Create a new feature in product PROD-1 for the Q3 release, Update the status of feature FEAT-217 to in-progress, Promote idea ID-44 into a feature on release REL-12, List all features scheduled for release REL-12
Not supported: Does not handle source control, CI builds, or customer support tickets — use for product, roadmap, and idea management within an Aha! workspace only.
Jentic publishes the only available OpenAPI specification for Aha! API, keeping it validated and agent-ready. Aha! is a product roadmap and idea management platform; the API exposes 47 endpoints for managing the full product hierarchy — products, releases, features, requirements, ideas, goals, initiatives, epics, to-dos, pages, and users — along with comments, tags, and workflows. Hosts are subdomain-scoped to a workspace, and authentication uses an OAuth2-style bearer token with a documented limit of 300 requests per minute and 20 per second per account.
Read and write comments and to-dos against any object in the hierarchy
Apply tags and move objects through workflows for status reporting
List and update users within the Aha! workspace
Patterns agents use Aha! API for, with concrete tasks.
★ Idea Triage and Promotion
Product managers triage incoming ideas and convert the strongest into features against a target release. The API exposes the full create/update lifecycle for ideas at /api/v1/products/{product_id}/ideas and lets the same agent promote an idea into a feature with one further call. Tagging and commenting endpoints round out the triage workflow.
GET /api/v1/products/{product_id}/ideas filtered by tag 'enterprise', then PUT each idea status to 'reviewed'
Roadmap Build-Out
Product teams script the creation of features, requirements, and dependencies for an upcoming release rather than clicking through the UI. POST /api/v1/products/{product_id}/features creates a feature, while requirements, to-dos, and tags can be attached in follow-up calls. The endpoints accept the company subdomain via the {company}.aha.io host so multi-tenant integrations work cleanly.
POST /api/v1/products/{product_id}/features for each backlog item, then PUT release_id on each to schedule
Goal and Initiative Tracking
Engineering and PMO teams keep an external dashboard in sync with Aha! by polling the goals and initiatives endpoints. /api/v1/products/{product_id}/goals returns the goals associated with a product and /api/v1/products/{product_id}/initiatives returns the strategic initiatives, both of which can be updated through the matching PUT endpoints to reflect progress.
GET /api/v1/products/{product_id}/initiatives and PUT progress=75 for initiative INIT-3
AI Agent Product Operations via Jentic
An agent built on Jentic can maintain Aha! state in response to natural language — 'add a feature for SSO support to our July release' — by chaining product lookup, feature creation, release assignment, and tag application. Jentic injects the bearer token from the vault, and the documented 300/min limit is applied per account so an agent can run many concurrent operations safely.
Use Jentic to search 'create a feature in Aha', load the schema, and create a feature with name and release_id
47 endpoints — jentic publishes the only available openapi specification for aha! api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/api/v1/products
List all products
/api/v1/products/{product_id}/features
Create a feature
/api/v1/features/{feature_id}
Update a feature
/api/v1/products/{product_id}/releases
Create a release
/api/v1/products/{product_id}/ideas
Create an idea
/api/v1/products/{product_id}/goals
Create a goal
/api/v1/products/{product_id}/initiatives
Create an initiative
/api/v1/releases/{release_id}/features
List features in a release
/api/v1/products
List all products
/api/v1/products/{product_id}/features
Create a feature
/api/v1/features/{feature_id}
Update a feature
/api/v1/products/{product_id}/releases
Create a release
/api/v1/products/{product_id}/ideas
Create an idea
Three things that make agents converge on Jentic-routed access.
Credential isolation
Aha! bearer tokens live in the Jentic vault and are scoped per workspace. They attach to each request at execution time, never appearing in agent context, so leaked transcripts cannot be replayed against the workspace.
Intent-based discovery
Agents search by intent (e.g. 'create a feature in Aha') and Jentic returns the matching operation along with the path parameters and request body fields, including the company subdomain placeholder.
Time to first call
Direct integration: 2-3 days to wire bearer auth, hierarchical resource lookups, and rate-limit handling. Through Jentic: under an hour — search, load schema, execute, with 429 backoff handled inside the runtime.
Alternatives and complements available in the Jentic catalogue.
GitHub
Source control and project boards that often pair with Aha! for engineering execution
Use GitHub alongside Aha! to track the engineering work backing a feature in Aha!
Specific to using Aha! API through Jentic.
Why is there no official OpenAPI spec for Aha! API?
Aha! does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call the Aha! API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the Aha! API use?
The API uses a bearer token in the Authorization header. Tokens can be generated as personal API keys or via OAuth2 in the Aha! account. Jentic stores the token in its vault and injects it on each request, so the secret never enters agent context.
What are the rate limits for the Aha! API?
The Aha! API is limited to 300 requests per minute and 20 requests per second per account. Plan batched workloads with backoff; 429 responses include retry guidance and should be honoured before retrying the call.
How do I create a feature in a release through the Aha! API?
POST /api/v1/products/{product_id}/features with the feature name, status, and an initial assigned_to_user. To attach the new feature to a release, follow up with PUT /api/v1/features/{feature_id} setting the release_id field.
How do I promote an idea to a feature through Jentic?
Search Jentic for 'promote an Aha idea to a feature'. Load the matching POST schema, supply the idea_id and target release_id, and execute. Jentic adds the bearer token before the call and returns the new feature record.
Can I list all goals and initiatives across products?
Yes, but the listing endpoints are scoped per product — call GET /api/v1/products/{product_id}/goals and /api/v1/products/{product_id}/initiatives for each product, then aggregate. Use the fields query parameter to keep responses small if you only need name and status.
/api/v1/products/{product_id}/goals
Create a goal
/api/v1/products/{product_id}/initiatives
Create an initiative
/api/v1/releases/{release_id}/features
List features in a release