Updating your API reference from a URL or CI
Keep your published API reference in step with your API through automatic URL checks, pushes from your CI pipeline, or file uploads.
Written By Markus Palm
Last updated About 1 hour ago
Overview
After you publish an API reference, it updates from the version's source: a URL that Featurebase checks, your CI pipeline, or a file you upload. Each update becomes a draft that readers do not see until you publish it, unless you let CI pushes publish without review.
You manage the source in the version's Source tab under Settings → Help Center → API reference.
Choose how your reference updates
Each version has one source. Pick the one that matches where your spec lives:
Featurebase reads only public URLs, so use CI or a file upload for a private spec.
Update from a URL
The Source tab shows the spec URL and two controls:
'Check now': Fetches the URL at once. The result says whether a draft is ready, the check is still running, or nothing changed
Check every 6 hours: Turns automatic checks on or off. It is on for a new URL source
A URL check never publishes. When the spec at the URL changed, the change becomes a draft that you review as described in Reviewing and publishing API changes.
Note: Automatic checks stop after five failed checks in a row. Click 'Check now' to see the reason. After a check succeeds, or after you change the URL, automatic checks start again.
Update from your CI pipeline
Your pipeline pushes the spec to Featurebase through the Featurebase API. The setup guide is in the version's Source tab, and in the popup right after you import a CI spec.
Create an API key
Click 'Create API key' and store the key as a secret named FEATUREBASE_API_KEY in your CI system. The key shows only once.
If you cannot create keys, a teammate with the Manage API permission creates the key for you. The pipeline must use a Workspace API key. Keys from sign-in connections, such as an MCP client, do not work for pushes.
Add the step to your pipeline
Choose a snippet and copy it. Each snippet already contains the address of this version:
GitHub Actions: A workflow file that pushes
openapi.jsonwhen it changes on yourmainbranchcURL: One command for any other CI system
From a URL: Sends a public spec URL instead of the file, for a spec that a server generates
Adjust the file name and branch if your repository uses others. To let an AI coding agent add the step, click 'Copy as prompt' and paste the prompt into the agent.
The snippets send an Idempotency-Key header made from the file's hash, so a re-run with the same file does not create a second draft.
Let pushes publish without review
Turn on Publish pushes without review to make each push go live at once. You need the Manage API permission to change it. Featurebase still keeps a push as a draft when:
It is the first import of the version
All endpoints, or more than 20% of the live endpoints, were removed
The API servers or the authentication schemes changed
A server in the spec is not selected under Allowed servers in the version's Settings tab
The spec may contain a secret
When a safety check stops a push, the Last push line under the setup guide names the reason.
Important: Select your spec's servers under Allowed servers before you rely on this setting. The server checkboxes are available only when Try it mode is not set to Off.
Update from a file
For a file source, click 'Upload new file' in the Source tab and drop the new spec. A CI source has the same option under Upload file, for a one-off update that keeps the CI source. Either way, the upload becomes a draft.
Change the source
To move a version to another source, open the version's ••• menu, click 'Change source', and choose the new source. The spec from the new source becomes a draft, and the published pages stay until you publish it.
To switch to CI without a file, click 'Switch to CI'. The published pages stay until the first push.
Fix update problems
URL checks fail
CI pushes fail
The snippets use curl --fail, so the step fails on an error response. A successful response only confirms that Featurebase received the spec. If the import itself fails, the Last push line in the Source tab shows the reason.