For Agents
Trigger Jenkins-style jobs, monitor builds and queues, retrieve console output, and manage job configurations on a CloudBees CI controller.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the CloudBees CI REST 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.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# 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 CloudBees CI REST API API.
Trigger a job with POST /job/{jobName}/build or with parameters via /buildWithParameters
Read live build status, parameters, and result for a specific build number
Cancel an in-flight build with the /stop endpoint
Retrieve raw console output for a build via /consoleText for log-driven analysis
GET STARTED
Use for: I need to trigger a CloudBees CI job from a webhook, Get the status of build #42 of the deploy job, List all jobs on the controller, Cancel a runaway build
Not supported: Does not handle source-control hosting, artifact storage, or non-Jenkins CI platforms — use for triggering and monitoring builds on a CloudBees CI controller only.
Jentic publishes the only available OpenAPI document for CloudBees CI REST API, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for CloudBees CI REST API, keeping it validated and agent-ready. CloudBees CI (formerly CloudBees Jenkins Enterprise) is the enterprise distribution of Jenkins and exposes a REST API compatible with Jenkins core. The endpoints cover instance and job introspection, build triggering with or without parameters, build cancellation, console log retrieval, build queue and node visibility, and CRUD operations on a job's config.xml. Authentication uses HTTP basic with the CloudBees CI username and an API token generated from the user profile page.
Inspect the build queue and registered nodes (computers) on the controller
Create new jobs by posting a config.xml payload to /createItem
Read or replace a job's config.xml to manage pipeline definitions as code
Patterns agents use CloudBees CI REST API API for, with concrete tasks.
★ Webhook-Driven Builds
Trigger CloudBees CI builds from external systems — Slack commands, custom git hosts, or workflow tools — by calling /job/{jobName}/build or /job/{jobName}/buildWithParameters. The endpoints accept parameters used by the Jenkinsfile and queue the build immediately. This replaces brittle Jenkins-side webhook plugins with a clean external HTTP call.
POST to /job/deploy/buildWithParameters with branch=main and environment=staging, then poll the queue for the assigned build number
Build Monitoring Dashboards
Aggregate build state across many CloudBees CI controllers into a single dashboard. /api/json on the controller returns the job list, /job/{jobName}/api/json returns the latest build per job, and /job/{jobName}/{buildNumber}/api/json returns per-build detail. The combination supports a dependable build status panel without parsing the Jenkins UI.
Fetch /api/json then iterate jobs and call /job/{jobName}/api/json for each, reporting jobs whose latest build failed
Failure Triage Automations
On a failed build, automatically retrieve the console output via /job/{jobName}/{buildNumber}/consoleText and feed the tail into a triage tool or LLM that classifies the failure (test failure vs infra timeout vs flake). The /stop endpoint can cancel a stuck build before retry, keeping queue capacity healthy on busy controllers.
On build failure event, GET /job/{jobName}/{buildNumber}/consoleText and post the last 500 lines to the triage channel
Pipeline-as-Code Management
Manage Jenkins job definitions as code by reading and writing config.xml from a Git repository. GET /job/{jobName}/config.xml exports the current definition, POST replaces it, and POST /createItem creates a new job from a config.xml template. This is the canonical pattern for keeping Jenkins configs reviewable in pull requests.
Read the current /job/release/config.xml, apply a diff to update the cron schedule, then POST it back
Agent-Driven CI Operations via Jentic
AI assistants for platform engineers can answer 'rerun the deploy job for last night's failed run' by searching Jentic for an intent and executing the matching trigger or stop operation. The CloudBees CI API token sits in the Jentic vault and is injected as basic auth per call, which keeps long-lived tokens out of the agent's context across many controllers.
Search Jentic for 'trigger cloudbees ci build', load /job/{jobName}/build, and execute it for the named job
13 endpoints — jentic publishes the only available openapi specification for cloudbees ci rest api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/api/json
Controller-level API root
/job/{jobName}/build
Trigger a build
/job/{jobName}/buildWithParameters
Trigger a build with parameters
/job/{jobName}/{buildNumber}/api/json
Get build details
/job/{jobName}/{buildNumber}/stop
Cancel a build
/job/{jobName}/{buildNumber}/consoleText
Get build console log
/queue/api/json
Read the build queue
/createItem
Create a new job from config.xml
/api/json
Controller-level API root
/job/{jobName}/build
Trigger a build
/job/{jobName}/buildWithParameters
Trigger a build with parameters
/job/{jobName}/{buildNumber}/api/json
Get build details
/job/{jobName}/{buildNumber}/stop
Cancel a build
Three things that make agents converge on Jentic-routed access.
Credential isolation
CloudBees CI usernames and API tokens are stored encrypted in the Jentic vault. Agents receive a per-call basic-auth credential so the long-lived token never enters the agent's context or logs — important when the same agent talks to many controllers.
Intent-based discovery
Agents search Jentic with intents like 'trigger cloudbees ci build' or 'get build console log' and Jentic returns the matching operation with its parameter schema, removing the need to read Jenkins URL conventions.
Time to first call
Direct CloudBees CI integration: half a day to handle CSRF crumbs, basic auth, and the queue-to-build transition. Through Jentic: under 30 minutes — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
CircleCI
Hosted CI/CD platform with config-as-code and orbs.
Choose CircleCI for greenfield SaaS-hosted CI; use CloudBees CI when an existing Jenkins-based controller fleet must be retained.
Buildkite
Hybrid CI with hosted control plane and self-hosted build agents.
Choose Buildkite when builds must run on private infrastructure with a SaaS control plane; use CloudBees CI for enterprise Jenkins on private infrastructure end-to-end.
GitHub
Source-of-truth for code that drives CloudBees CI builds.
Use GitHub APIs to react to PR events, then call CloudBees CI to trigger the corresponding build.
CloudBees Codeship
CloudBees' SaaS CI offering, complementary for teams running parallel SaaS pipelines.
Use CloudBees CI for the enterprise Jenkins controller path; use Codeship for lighter SaaS pipelines under the same CloudBees account.
Specific to using CloudBees CI REST API API through Jentic.
Why is there no official OpenAPI spec for CloudBees CI REST API?
CloudBees does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call CloudBees CI REST 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 CloudBees CI REST API use?
The API uses HTTP basic authentication with the user's CloudBees CI username and an API token generated from {instance_url}/me/configure. Through Jentic, the username and token are stored encrypted in the vault and injected per call so the raw token never enters the agent's context.
Can I trigger a parameterised build with this API?
Yes. POST /job/{jobName}/buildWithParameters accepts the parameters expected by the Jenkinsfile as form data and queues the build immediately. The build's queued ID is returned in the Location header so the caller can poll the queue for the assigned build number.
What are the rate limits for the CloudBees CI REST API?
CloudBees CI itself does not impose a documented rate limit — limits depend on the controller's resources and the plugin set. Treat the API as low-volume control-plane traffic and avoid bursting more than a few requests per second per controller, especially for /consoleText.
How do I retrieve a build's console output through Jentic?
Run pip install jentic, search for 'get cloudbees ci console log', load the GET /job/{jobName}/{buildNumber}/consoleText operation, then execute with the job name and build number. The call returns the raw console text.
Does this API let me create new jobs from a config.xml file?
Yes. POST /createItem with a name query parameter and an XML body creates a new job. Existing jobs can be updated by POSTing the new XML to /job/{jobName}/config.xml, which is the canonical Jenkins pattern for pipeline-as-code workflows.
/job/{jobName}/{buildNumber}/consoleText
Get build console log
/queue/api/json
Read the build queue
/createItem
Create a new job from config.xml