Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Codebase 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://jentic.com/install.sh?src=apis&api=%2Fapis%2Fcodebasehq.com%2Fcodebasehq" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fcodebasehq.com%2Fcodebasehq" | 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 Codebase API.
List every project in a Codebase account via GET /projects
Create a new Codebase project with POST /create_project
Update an existing project's metadata using PUT /project/{projectId}
Provision Git, Mercurial, or Subversion repositories inside a project via POST /{project}/repositories
Retrieve a specific repository's clone URL and metadata with GET /{project}/{repository}
GET STARTED
Delete a project or repository when retiring a workstream
Enumerate all repositories that belong to a single project before mirroring or migration
Patterns agents use Codebase API for, with concrete tasks.
★ Project Provisioning for New Engagements
Spin up a Codebase project and one or more repositories whenever a new client engagement begins. The API lets you call POST /create_project followed by POST /{project}/repositories so the engineering team has source control and ticketing in place from day one. Useful for agencies and consultancies that need repeatable project bootstrapping without manual UI clicks.
Call POST /create_project with name 'Acme Mobile App' then POST /{project}/repositories to add a Git repository named 'mobile-app' and return both clone URLs
Repository Inventory and Audit
Build a current inventory of every repository across every Codebase project for security, licensing, or migration audits. Iterate GET /projects then GET /{project}/repositories per project to produce a structured list. Keeps account-wide visibility honest when projects accumulate over years.
Call GET /projects and for each returned project call GET /{project}/repositories, then output a CSV of project name, repository name, and SCM type
Decommissioning Old Projects
When a client engagement ends or a product is sunset, remove the project and its repositories cleanly. The API supports DELETE /{project} and DELETE /{project}/{repository} so that decommissioning can be scripted alongside backup steps. This avoids paying for inactive seats and reduces the attack surface of forgotten repos.
For project 'legacy-portal' fetch its repositories with GET /{project}/repositories, archive each via local clone, then DELETE /{project}/{repository} for each followed by DELETE /{project}
Migration Off Codebase
Codebase customers occasionally migrate to GitHub or GitLab. The API lets agents read the project list, enumerate repositories, and capture clone URLs so an automated migration tool can mirror each repository into the new host. Migration windows shrink from days of manual work to a single scripted run.
Iterate every project and repository, mirror each via git clone --mirror against the Codebase clone URL, then push each to a matching GitHub repository created via the GitHub API
Agent-Driven Repository Management via Jentic
An AI agent connected to Jentic can manage Codebase projects and repositories without holding the raw API key. The agent searches Jentic for 'manage Codebase repository', loads the operation schema, and executes calls against api3.codebasehq.com while Jentic injects HTTP Basic credentials from the vault. End users can issue natural-language instructions and the agent performs the right combination of project and repository operations.
Use Jentic to search 'create a Codebase project', load the POST /create_project schema, and execute it for project name 'AI Pilot' on behalf of the requesting user
9 endpoints — jentic publishes the only available openapi specification for codebase api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/projects
List all projects in the Codebase account
/create_project
Create a new project
/{project}
Retrieve a specific project
/project/{projectId}
Update an existing project
/{project}
Delete a project
/{project}/repositories
List repositories under a project
/{project}/repositories
Create a repository inside a project
/{project}/{repository}
Delete a repository
/projects
List all projects in the Codebase account
/create_project
Create a new project
/{project}
Retrieve a specific project
/project/{projectId}
Update an existing project
/{project}
Delete a project
/{project}/repositories
List repositories under a project
/{project}/repositories
Create a repository inside a project
/{project}/{repository}
Delete a repository
What agents get from Jentic-routed access to this vendor.
Setup
Wiring Codebase by hand means building its Basic auth header from an account_name/username pair plus a 40-character API key, targeting api3.codebasehq.com, and handling the mixed project and repository paths yourself. Through Jentic you install once, import the Codebase API from the API Directory, store those credentials once, and your agent calls it.
Permission scoping
Codebase puts the project in the URL path (/{project}, /{project}/repositories, /project/{projectId}), so a rule can pin your agent to one project: it can list and manage repositories under that project and nothing else. You choose the operations it may call, so destructive ones like deleting a project or deleting a repository are not included unless you add them.
Credential isolation
Your Codebase account name, username, and API key are stored once, encrypted, by your own Jentic One instance and injected at execution time as the Basic Authorization header. They never enter the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'create a Codebase repository' or 'list projects', and Jentic returns the matching Codebase operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using Codebase API through Jentic.
Why is there no official OpenAPI spec for Codebase API?
Codebase does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Codebase API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.
What authentication does the Codebase API use?
The Codebase API uses HTTP Basic authentication. The username is in the form account_name/username and the password is a 40-character API key generated in the Codebase account profile. Through Jentic, the credential is stored in the vault and never enters the agent's context.
Can I create Git repositories programmatically with the Codebase API?
Yes. POST /{project}/repositories creates a new repository inside a parent project, and the spec supports Git, Mercurial, and Subversion repository types. The project must already exist, so you typically pair this call with POST /create_project for net-new engagements.
What are the rate limits for the Codebase API?
Codebase does not publish a public rate limit in its documentation. Treat the API as best-effort and back off on HTTP 429 or 503 responses. For batch jobs such as account-wide repository inventories, throttle to a few requests per second to stay safe.
How do I list all repositories in a project through Jentic?
Search Jentic for 'list Codebase repositories', load the GET /{project}/repositories schema, and execute it with the project shortname. Jentic injects the HTTP Basic credential from the vault, parses the XML response, and returns repository metadata to the agent.
Does the Codebase API return JSON?
No. Request and response bodies are XML. Agents calling through Jentic receive parsed structured data, but if you call the API directly you must serialise and deserialise XML payloads yourself.
Can I limit what my agent is allowed to do with the Codebase API?
Yes. Because you run Jentic One yourself, your own rules decide which Codebase operations and credentials the agent may use. Since Codebase puts the project in the URL path (/{project}, /{project}/repositories, /project/{projectId}), you can pin the agent to a single project so it only lists and manages repositories under that project. You also choose the operations it may call, so destructive ones like DELETE /{project} or DELETE /{project}/{repository} are excluded unless you explicitly add them.
Know of an official OpenAPI document? Contribute it →
For Agents
List, create, update, and delete Codebase projects and repositories using HTTP Basic authentication. Suitable for agents managing source-controlled work on the Codebase platform.
Use for: List all projects in my Codebase account, Create a new Codebase project for a client engagement, I want to add a Git repository to an existing Codebase project, Retrieve the clone URL for a specific Codebase repository
Not supported: Does not handle ticket creation, time tracking, deployments, or CI/CD - use for Codebase project and repository management only.
Jentic publishes the only available OpenAPI specification for Codebase API, keeping it validated and agent-ready. Codebase is a project management and source code hosting service that combines Git, Mercurial, and Subversion repository hosting with ticket tracking, time tracking, and notebook tools. The Codebase API exposes 9 endpoints for managing projects and repositories, using HTTP Basic authentication with an account name plus a 40-character API key. Request and response bodies are XML, and the API targets teams that need a self-contained alternative to combining GitHub or GitLab with a separate issue tracker.