Skip to main content
POST
/
{orgId}
/
{agentId}
/
{nodeId}
/
trigger
// Node.js (using fetch)
import fetch from 'node-fetch';

const orgId = "<Org ID>";
const agentId = "<Agent ID>";
const nodeId = "<Node ID>";
const apiUrl = `https://api.joinoverlap.com/${orgId}/${agentId}/${nodeId}/trigger`;

const headers = {
  "Content-Type": "application/json",
  "Authorization": "Bearer YOUR_API_KEY"
};

const payload = {
  url: "https://youtube.com/watch?v=dQw4w9WgXcQ",
  notify: true
};

fetch(apiUrl, {
  method: "POST",
  headers,
  body: JSON.stringify(payload)
})
  .then(res => res.json())
  .then(data => console.log(data))
  .catch(err => console.error(err));

Endpoint

POST https://api.joinoverlap.com/{orgId}/{projectId}/{agentId}/trigger
  • Path Parameters
    • orgId — Your organization’s ID.
    • agentId — The agent to trigger.
    • nodeId — The specific node within the agent to trigger.
This URL will be provided to you by navigating to Clipping Agents -> Agent -> Trigger via API

Authentication

All requests must include a valid Bearer token:
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Found by pressing Trigger via API then Generate API Key

Request Body

{
  "url": "https://youtube.com/watch?v=dQw4w9WgXcQ",
  "notify": true,
  "title": "Never going to give you up",
  "render": false,
  "promptAdjustment": "Rick Astley's debut single, "Never Gonna Give You Up," was a #1 hit in 25 countries."
}
  • url (string, required) — The resource URL the workflow should process.
  • notify (boolean, optional) — Whether you’d like an email notification when finished. Defaults to false.
  • title (string, optional) — Override title for the video. A title will be generated if it is not provided.
  • render (boolean, optional) — Defaults to false. Does not wait for final video rendering. Set this to true if you want the final rendered video returned. Note, this will add ~3 minutes to the processing time.
  • prompt (string, optional) — Overrides the default clip-finding prompt in the clipping agent. Use sparingly as this will fully replace the current prompt
  • promptAdjustment (string, optional) — Text prompt appended to the end of the main clipping agent prompt. Frequently used to inject information that is only known at runtime (i.e. more video information, etc.)
// Node.js (using fetch)
import fetch from 'node-fetch';

const orgId = "<Org ID>";
const agentId = "<Agent ID>";
const nodeId = "<Node ID>";
const apiUrl = `https://api.joinoverlap.com/${orgId}/${agentId}/${nodeId}/trigger`;

const headers = {
  "Content-Type": "application/json",
  "Authorization": "Bearer YOUR_API_KEY"
};

const payload = {
  url: "https://youtube.com/watch?v=dQw4w9WgXcQ",
  notify: true
};

fetch(apiUrl, {
  method: "POST",
  headers,
  body: JSON.stringify(payload)
})
  .then(res => res.json())
  .then(data => console.log(data))
  .catch(err => console.error(err));

Sample Response

{
  "message": "Workflow trigger initiated successfully",
  "status": "pending",
  "triggerId": "trigger_20250624184340_3f3c921a"
}
  • message (string) — Confirmation text.
  • status (string) — Current status of the trigger (Processing, Learning, Completed, Error).
  • triggerId (string) — Unique identifier for this workflow run.