CI HUB Integration SDK
Write an adapter that translates your platform's API into CI HUB's handler format using defineIntegration. CI HUB calls your handlers; you return data in the expected shape.
Your Platform API ←→ Your Adapter ←→ CI HUBQuick start
Scaffold a new project:
npm create @ci-hub/integration my-integrationpnpm create @ci-hub/integration my-integrationyarn create @ci-hub/integration my-integrationbun create @ci-hub/integration my-integrationcd my-integration
npm run devMinimum handlers
Five handlers are required for a working adapter:
| Handler | Purpose |
|---|---|
login | Complete login flow — render login screen, exchange credentials or OAuth code for tokens |
checkToken | Validate the stored token. Return an error to force re-login |
refreshToken | Called when checkToken fails. Refresh the access token, or return an error to force re-login |
logout | End the session. If your platform has no logout endpoint, return sendStatus(200) — CI HUB deletes stored tokens automatically |
info | Return basic metadata about the authenticated user and the remote system |
Add search for read-only asset browsing. Add createAsset / updateAsset for write support. Every other handler is optional.
Handler categories
| Category | Handlers |
|---|---|
| Auth | login, logout, checkToken, refreshToken |
| Assets | search, getFolder, createAsset, updateAsset, deleteAsset, download |
| Folders | createFolder, renameFolder, deleteFolder, moveFolder |
| Asset actions | lockAsset, renameAsset, moveAsset, getAssetVersions |
| Tasks | searchTasks, getTask, getTaskAssets, addTaskComment, addTaskAsset, deleteTaskAsset, updateCustomTaskState |
| Brand | getBrandConfig, getBrandAssets |
| Advanced | doTransformation, additionalRendition, saveAssetRelations |