Management API
Examples below use references use.jitsu.com, a Jitsu Cloud instance. Replace it with your host name if you self-host Jitsu.
Jitsu exposes a set of APIs to manage Jitsu configuration programmatically. In fact, Jitsu UI is using the very same API to implement user interface.
Entities
Jitsu has a number of entities that can be managed via API: stream, destination, link and function. Entity represents one or more of core concepts equiv
stream= Sitedestination= Destinationlink= Connection or Syncfunction= Function
Following operations are supported for stream, destination and function:
GET https://use.jitsu.com/api/[workspaceId]/config/[type]— to get a list of all entities of a given type[type]POST https://use.jitsu.com/api/[workspaceId]/config/[type]— to create an entity of[type]GET https://use.jitsu.com/api/[workspaceId]/config/[type]/[id]— to get an entity of[type]and[id]PUT https://use.jitsu.com/api/[workspaceId]/config/[type]/[id]— to modify an entity of[type]and[id]DELETE https://use.jitsu.com/api/[workspaceId]/config/[type]/[id]?strict=[strict]&cascade=[cascade]— to delete an entity of[type]and[id].strictandcascadeare optional query parameters. See Cascade Delete section for details.
Following operations are supported for link:
GET https://use.jitsu.com/api/[workspaceId]/config/link— to get a list of all links (Syncs and Connections)POST https://use.jitsu.com/api/[workspaceId]/config/link?strict=[strict]— to create an entity of link. Providestrictto validate request body object before creation)PUT https://use.jitsu.com/api/[workspaceId]/config/link?strict=[strict]— to modify an entity of link (idmust be provided in the request body). Providestrictto validate request body object before creation.DELETE https://use.jitsu.com/api/[workspaceId]/config/link?id=[id]— to delete an entity of link with[id].
You would need your [workspaceId] to make API calls. You can find it in Jitsu UI on workspace setting page

Authentication
All API calls, except schema queries, must be authenticated with an API key by Authorization HTTP header:
Authorization: Bearer <api-key>
API keys can be generated in Jitsu UI, on user settings page

API key has a format of {keyId}:{keySecret}. Jitsu never stores key secret, so make sure to copy it right after key creation.
Schema
Each entity has its own data schema. You can get it via /api/schema/[type] call. destinations and links might have additional fields depending on destination type. They are available at:
/api/schema/destination/[destinationType]/api/schema/link/[destinationType]— fields specific to link to a destination of[destinationType]/api/schema/link/sync— fields specific to Sync object
Catalog of all schemas can be found at /api/schema
Use JSON Schema Faker to generate an JSON example based on JSON schema
Cascade Delete
When deleting an entity that is referenced by other entities (Connections or Syncs), you have two additional options: strict and cascade.
- strict (default:
false) — if set totrue, Jitsu will prevent deletion of an entity that is referenced by other entities. If set tofalse, Jitsu will proceed with deletion. - cascade (default:
false) — if set totrue, Jitsu will delete all entities (Connections or Syncs) that reference the entity being deleted. Use with caution.