{"openapi":"3.1.0","info":{"title":"PumpGTM Core X API","version":"1.0.0","description":"Integrate X eligibility, review-first enrollment and outreach progress into your agent. The workspace MCP key also authenticates REST. Start at https://app.pumpgtm.com/docs/api. No browser session required.","contact":{"url":"https://pumpgtm.com"}},"servers":[{"url":"https://app.pumpgtm.com/api/v1","description":"Production"}],"security":[{"WorkspaceKey":[]}],"tags":[{"name":"Workspace"},{"name":"Eligibility"},{"name":"Plays"},{"name":"Progress"},{"name":"Webhooks"}],"paths":{"/workspaces":{"get":{"operationId":"listWorkspaces","tags":["Workspace"],"summary":"List accessible workspaces","description":"Use the MCP key without X-Eve-Client. Returns only its workspace and permitted Team workspaces. Select a returned ID on subsequent requests; a header never grants access.","parameters":[],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"workspaces":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"role":{"enum":["owner","admin","member"]}},"required":["id"]}}},"required":["workspaces"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/x/accounts":{"get":{"operationId":"listXAccounts","tags":["Workspace"],"summary":"List connected X identities","description":"Read saved account identities. No provider health check or OAuth refresh.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"accounts":{"type":"array","items":{"type":"object","properties":{"userId":{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},"handle":{"type":"string"}},"required":["userId","handle"]}}},"required":["accounts"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/x/readiness":{"get":{"operationId":"getXReadiness","tags":["Workspace"],"summary":"Read account, billing and Energy state","description":"Read-only snapshot. Check each section's state/issues; data may be null. Provider health is unverified. A connection or positive follower result does not guarantee delivery.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"workspaceId":{"type":"string","format":"uuid"},"asOf":{"type":"string"},"accounts":{"type":"object","properties":{"state":{"enum":["complete","partial","unavailable"]},"observedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}]},"issues":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"]}}},"required":["state","observedAt","data","issues"]},"billing":{"type":"object","properties":{"state":{"enum":["complete","partial","unavailable"]},"observedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}]},"issues":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"]}}},"required":["state","observedAt","data","issues"]},"energy":{"type":"object","properties":{"state":{"enum":["complete","partial","unavailable"]},"observedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}]},"issues":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"]}}},"required":["state","observedAt","data","issues"]},"providerHealthChecked":{"const":false},"deliveryGuaranteed":{"const":false},"note":{"type":"string"}},"required":["workspaceId","asOf","accounts","billing","energy","providerHealthChecked","deliveryGuaranteed","note"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/x/users/resolve":{"post":{"operationId":"resolveXIdentity","tags":["Eligibility"],"summary":"Resolve a handle to a numeric X ID","description":"One exact public handle lookup via TwitterAPI.io. No email-to-X enrichment or fuzzy identity matching. An unverified or unavailable profile returns HTTP 503 with status unknown and user null. No official X fallback.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"username":{"type":"string","pattern":"^@?[A-Za-z0-9_]{1,15}$","description":"Public X handle, with optional @. Case-insensitive."}},"required":["username"],"additionalProperties":false},"example":{"username":"example_handle"}}}},"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"const":"resolved"},"user":{"type":"object","properties":{"xUserId":{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},"username":{"type":"string"},"name":{"type":"string"},"checkedAt":{"type":"string"},"evidence":{"const":"public_profile"}},"required":["xUserId","username","name","checkedAt","evidence"]},"provider":{"const":"twitterapi"},"sendsMessages":{"const":false}},"required":["status","user","provider","sendsMessages"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/x/eligibility":{"post":{"operationId":"checkXFollowerEligibility","tags":["Eligibility"],"summary":"Check whether leads follow your account","description":"Direction: the lead follows the connected account. Supply exactly one X identity per lead. Handles use direct relationship evidence. Numeric IDs use a bounded public follower snapshot: presence is true; absence is null, never a verified false. null means unknown, not eligible or ineligible. Provider errors can produce HTTP 200 with unknown individual results. Up to 100 leads; sequential work is time bounded, so small batches are preferable. Per-instance short cache may be reused; checkedAt is evidence time. No messages are sent.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"account":{"type":"string","pattern":"^@?[A-Za-z0-9_]{1,15}$","description":"Public X handle, with optional @. Case-insensitive."},"leads":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string","maxLength":200},"xUsername":{"type":"string","pattern":"^@?[A-Za-z0-9_]{1,15}$","description":"Public X handle, with optional @. Case-insensitive."},"xUserId":{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."}},"required":[],"additionalProperties":false,"oneOf":[{"required":["xUsername"]},{"required":["xUserId"]}]},"minItems":1,"maxItems":100}},"required":["account","leads"],"additionalProperties":false},"example":{"account":"mastra","leads":[{"reference":"crm-123","xUsername":"example_handle"}]}}}},"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"account":{"type":"string"},"results":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"xUsername":{"type":"string"},"xUserId":{"anyOf":[{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},{"type":"null"}]},"followsAccount":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"checkedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["xUserId","followsAccount","checkedAt","reason","evidence"]}},"provider":{"const":"twitterapi"},"sendsMessages":{"const":false}},"required":["account","results","provider","sendsMessages"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/x/plays":{"get":{"operationId":"listXPlays","tags":["Plays"],"summary":"Discover X Plays and their revisions","description":"Use reviewApiEnabled to identify Plays supporting candidate review, import, lookup and enrollment. Plays must be explicitly enabled for review APIs. Autopilot Plays cannot use manual import/enrollment.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"plays":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"status":{"enum":["active","paused","archived"]},"revision":{"type":"integer","minimum":1,"description":"Current saved revision. Fetch again after a 409; do not silently retry a changed plan."},"sequenceId":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"accountUserId":{"anyOf":[{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},{"type":"null"}]},"reviewApiEnabled":{"type":"boolean"},"autopilot":{"type":"boolean"}},"required":["id","name","status","revision","sequenceId","accountUserId","reviewApiEnabled","autopilot"]}}},"required":["plays"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/plays/{id}/candidates":{"get":{"operationId":"listPlayCandidates","tags":["Plays"],"summary":"Page through review candidates","description":"Saved review candidates, not evidence of a current follow relationship. Returns Play and sequence revisions for guarded enrollment. Cursor paging covers all batches.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":200,"default":100}},{"name":"after","in":"query","schema":{"type":"string","format":"uuid"},"description":"Pass nextCursor from the previous response until null."},{"name":"filter","in":"query","schema":{"enum":["all","unreviewed","good_fit","not_a_good_fit"],"default":"all"}}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"counts":{"type":"object","properties":{"total":{"type":"integer"},"unreviewed":{"type":"integer"},"goodFit":{"type":"integer"},"notAGoodFit":{"type":"integer"}},"required":["total","unreviewed","goodFit","notAGoodFit"]},"candidates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"xUserId":{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},"username":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"enum":["proposed","approved","imported","rejected"]},"review":{"anyOf":[{"type":"object"},{"type":"null"}]}},"required":["id","xUserId","username","name","status","review"]}},"nextCursor":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"play":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"revision":{"type":"integer","minimum":1,"description":"Current saved revision. Fetch again after a 409; do not silently retry a changed plan."},"status":{"type":"string"}},"required":["id","name","revision","status"]},"sequence":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"revision":{"type":"integer","minimum":1,"description":"Current saved revision. Fetch again after a 409; do not silently retry a changed plan."},"status":{"type":"string"},"approved":{"type":"boolean"}},"required":["id","name","revision","status","approved"]},{"type":"null"}]},"reviewUrl":{"type":"string"}},"required":["counts","candidates","nextCursor","play","sequence","reviewUrl"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/plays/{id}/candidates/lookup":{"post":{"operationId":"lookupPlayCandidates","tags":["Plays"],"summary":"Find existing candidates by X identity","description":"Exact identity lookup across all saved Play batches. Each identity requires xUserId OR username. Ambiguous matches return 409; use numeric IDs or the candidate list. This endpoint does not check a live follower relationship.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"identities":{"type":"array","items":{"type":"object","properties":{"xUserId":{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},"username":{"type":"string","pattern":"^@?[A-Za-z0-9_]{1,15}$","description":"Public X handle, with optional @. Case-insensitive."}},"required":[],"additionalProperties":false,"oneOf":[{"required":["xUserId"]},{"required":["username"]}]},"minItems":1,"maxItems":200}},"required":["identities"],"additionalProperties":false},"example":{"identities":[{"xUserId":"123456789"}]}}}},"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"playId":{"type":"string","format":"uuid"},"results":{"type":"array","items":{"type":"object","properties":{"exists":{"type":"boolean"},"candidate":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"xUserId":{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},"username":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"enum":["proposed","approved","imported","rejected"]},"review":{"anyOf":[{"type":"object"},{"type":"null"}]}},"required":["id","xUserId","username","name","status","review"]},{"type":"null"}]},"enrolledInPlay":{"type":"boolean"},"currentFollowerStatus":{"const":"unknown"},"existingLeads":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"sequenceId":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"playId":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stage":{"type":"string"}},"required":["id","sequenceId","playId","stage"]}}}}}},"required":["playId","results"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/plays/{id}/import":{"post":{"operationId":"importPlayCandidates","tags":["Plays"],"summary":"Import external leads for review","description":"Requires an enabled, non-archived, manual-review Play. Resolve known handles first, then submit numeric IDs. Names are caller-provided display labels, not verified identity evidence. The operation is atomic: 1–100 unique IDs. requestId is scoped to workspace + Play; retry the exact same normalized payload for the stored result. Reusing it with changed inputs returns 409. Existing candidates retain their review state. Import does not verify followers, enroll, change sequence status or send. Duplicate candidate records produce 409.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._:-]{7,119}$"},"expectedRevision":{"type":"integer","minimum":1,"description":"Current saved revision. Fetch again after a 409; do not silently retry a changed plan."},"leads":{"type":"array","items":{"type":"object","properties":{"xUserId":{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},"name":{"type":"string","minLength":1,"maxLength":200},"reference":{"type":"string","maxLength":200}},"required":["xUserId"],"additionalProperties":false},"minItems":1,"maxItems":100}},"required":["requestId","expectedRevision","leads"],"additionalProperties":false},"example":{"requestId":"crm-import-20261003-001","expectedRevision":1,"leads":[{"xUserId":"123456789","reference":"crm-123"}]}}}},"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"playId":{"type":"string","format":"uuid"},"batchId":{"type":"string","format":"uuid"},"requestId":{"type":"string"},"replayed":{"type":"boolean"},"results":{"type":"array","items":{"type":"object","properties":{"xUserId":{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},"reference":{"anyOf":[{"type":"string"},{"type":"null"}]},"candidateId":{"type":"string","format":"uuid"},"result":{"enum":["imported","existing_candidate"]}},"required":["xUserId","reference","candidateId","result"]}},"enrolled":{"const":false},"sendsMessages":{"const":false}},"required":["playId","batchId","requestId","replayed","results","enrolled","sendsMessages"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/plays/{id}/enroll":{"post":{"operationId":"enrollPlayCandidates","tags":["Plays"],"summary":"Approve candidates and enroll through the existing engine","description":"Mutating action: marks selected candidates good fit and queues newly enrolled leads. Requires exact Play and sequence revisions and the Play's own connected sender/sequence. An active eligible sequence can send on its next engine run. Does not activate, approve or change the sequence itself. Existing leads (including stopped/replied leads) keep their original state and sequence. Repeating a completed good-fit review returns already_reviewed; conflicting review decisions return 409. POST /plays/{id}/leads is an alias.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"expectedRevision":{"type":"integer","minimum":1,"description":"Current saved revision. Fetch again after a 409; do not silently retry a changed plan."},"sequenceId":{"type":"string","format":"uuid"},"sequenceRevision":{"type":"integer","minimum":1,"description":"Current saved revision. Fetch again after a 409; do not silently retry a changed plan."},"candidateIds":{"type":"array","items":{"type":"string","format":"uuid"},"minItems":1,"maxItems":200,"uniqueItems":true}},"required":["expectedRevision","sequenceId","sequenceRevision","candidateIds"],"additionalProperties":false},"example":{"expectedRevision":1,"sequenceId":"00000000-0000-4000-8000-000000000001","sequenceRevision":1,"candidateIds":["00000000-0000-4000-8000-000000000002"]}}}},"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"type":"object","properties":{"candidateId":{"type":"string","format":"uuid"},"result":{"enum":["enrolled","existing_lead","already_reviewed","rejected"]},"leadId":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}},"required":["candidateId","result","leadId"]}},"sequenceStatus":{"anyOf":[{"type":"string"},{"type":"null"}]},"sequenceStatusChanged":{"const":false},"reviewUrl":{"type":"string"}},"required":["results","sequenceStatus","sequenceStatusChanged","reviewUrl"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/plays/{id}/leads":{"get":{"operationId":"listEnrolledPlayLeads","tags":["Plays"],"summary":"List enrolled leads","description":"Enrolled records for the selected Play, with stable cursor pagination. Use each lead ID to read detailed state or stop its automation.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":200,"default":100}},{"name":"after","in":"query","schema":{"type":"string","format":"uuid"},"description":"Pass nextCursor from the previous response until null."}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"playId":{"type":"string","format":"uuid"},"leads":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"xUserId":{"anyOf":[{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},{"type":"null"}]},"username":{"anyOf":[{"type":"string"},{"type":"null"}]},"sequenceId":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stage":{"type":"string"},"createdAt":{"type":"string"}},"required":["id","name","xUserId","username","sequenceId","stage","createdAt"]}},"nextCursor":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"hasMore":{"type":"boolean"}},"required":["playId","leads","nextCursor","hasMore"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/x/leads/{id}":{"get":{"operationId":"getXLeadStatus","tags":["Progress"],"summary":"Read one lead's saved progress","description":"Tenant-owned X lead only. Stage/milestones are saved observations, not a live provider probe. automationStopped means the sequence is done/stopped; it does not distinguish normal completion from a manual stop.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"lead":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"xUserId":{"anyOf":[{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},{"type":"null"}]},"username":{"anyOf":[{"type":"string"},{"type":"null"}]},"accountUserId":{"anyOf":[{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},{"type":"null"}]},"playId":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"sequenceId":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stage":{"type":"string"},"automationStopped":{"type":"boolean"},"currentStep":{"type":"integer"},"nextActionAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"followedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"followedBackAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"messagedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"repliedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"optedOutAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"deliveryGuaranteed":{"const":false}},"required":["id","xUserId","username","accountUserId","playId","sequenceId","stage","automationStopped","currentStep","nextActionAt","followedAt","followedBackAt","messagedAt","repliedAt","optedOutAt","deliveryGuaranteed"]}},"required":["lead"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/x/leads/{id}/stop":{"post":{"operationId":"stopXLead","tags":["Progress"],"summary":"Stop this lead's future automation","description":"Idempotent stop using the existing removal controls. Stops all sequence lanes for this lead, preserving contacted history; uncontacted queued leads become skipped. Available even after X is disabled. Does not recall dispatched actions, permanently suppress the identity, or delete history.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"lead":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"xUserId":{"anyOf":[{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},{"type":"null"}]},"username":{"anyOf":[{"type":"string"},{"type":"null"}]},"accountUserId":{"anyOf":[{"type":"string","pattern":"^[1-9][0-9]{0,19}$","description":"Numeric X user ID as a string. Never convert it to a JavaScript number."},{"type":"null"}]},"playId":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"sequenceId":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stage":{"type":"string"},"automationStopped":{"type":"boolean"},"currentStep":{"type":"integer"},"nextActionAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"followedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"followedBackAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"messagedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"repliedAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"optedOutAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"deliveryGuaranteed":{"const":false}},"required":["id","xUserId","username","accountUserId","playId","sequenceId","stage","automationStopped","currentStep","nextActionAt","followedAt","followedBackAt","messagedAt","repliedAt","optedOutAt","deliveryGuaranteed"]},{"type":"null"}]},"scope":{"const":"lead_automation"},"permanentSuppression":{"const":false},"note":{"type":"string"}},"required":["ok","lead","scope","permanentSuppression","note"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/sequences":{"get":{"operationId":"listSequences","tags":["Progress"],"summary":"List existing sequences","description":"Read tenant-owned sequences, ordered steps and counts. Create/edit sequences in the product for this release; X reply sending and sequence/Play authoring APIs are outside the core release.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"sequences":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["sequences"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/sequences/{id}/status":{"patch":{"operationId":"setSequenceStatus","tags":["Progress"],"summary":"Pause or resume an existing sequence","description":"Affects every lead in this sequence. active may enable sending, subject to existing approval, billing, budget and provider controls. paused halts future sequence work; already dispatched actions cannot be recalled. Does not edit or approve content.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"enum":["active","paused","draft"]}},"required":["status"]},"example":{"status":"paused"}}}},"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"}},"required":["ok"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/replies":{"get":{"operationId":"listReplies","tags":["Progress"],"summary":"Read pending replies","description":"Includes X and LinkedIn replies. X rows have channel x, no draft and no allowedDecisions; answer in X. Encrypted text can be unavailable. This is a bounded pending queue, not a complete conversation archive.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":200,"default":50}}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"replies":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["replies"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/activity":{"get":{"operationId":"listActivity","tags":["Progress"],"summary":"Read the activity ledger","description":"Use action=x_dm and outcome=ok to inspect confirmed X sends. Other actions may be skipped/failed. Bounded recent ledger; polling supplements best-effort webhook delivery.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"action","in":"query","schema":{"type":"string"},"description":"Comma-separated action names, e.g. x_dm,x_follow"},{"name":"outcome","in":"query","schema":{"enum":["ok","failed","skipped"]}},{"name":"sinceDays","in":"query","schema":{"type":"number","minimum":0}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":1000,"default":200}}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/webhooks":{"get":{"operationId":"listWebhooks","tags":["Webhooks"],"summary":"List enabled subscriptions","description":"Lists workspace webhook URLs and events; never returns signing secrets.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"webhooks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"url":{"type":"string"},"events":{"type":"array","items":{"type":"string"}},"createdAt":{"type":"string"}},"required":["id","url","events","createdAt"]}},"events":{"type":"array","items":{"type":"string"}}},"required":["webhooks","events"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}},"post":{"operationId":"createWebhook","tags":["Webhooks"],"summary":"Subscribe to signed events","description":"Maximum 10 enabled hooks. Save the returned secret securely; it is shown only at creation. HTTPS port 443 and publicly resolving IPv4 DNS required. Private/mixed IPs, URL credentials, fragments and redirects are rejected. Registration is not idempotent: list before retrying after a timeout. Delivery is best-effort with up to three attempts, not a durable replay queue. Verify signatures on the exact raw body and deduplicate event IDs. x.followed means an inbound follow of your connected account. lead.messaged includes successful x_dm with channel x; reply.received can include unreadable encrypted content.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","format":"uri","maxLength":2000},"events":{"type":"array","items":{"enum":["reply.received","lead.invited","lead.accepted","lead.messaged","lead.emailed","lead.meeting_booked","x.followed","ping"]},"minItems":1,"maxItems":8}},"required":["url","events"]},"example":{"url":"https://hooks.example.com/pump","events":["reply.received","lead.messaged","x.followed"]}}}},"responses":{"201":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"url":{"type":"string"},"events":{"type":"array","items":{"type":"string"}},"secret":{"type":"string"}},"required":["id","url","events","secret"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/webhooks/{id}/test":{"post":{"operationId":"testWebhook","tags":["Webhooks"],"summary":"Schedule a signed ping","description":"202 means the ping was scheduled, not that the receiver accepted it. Verify the event at your receiver.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"202":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"id":{"type":"string","format":"uuid"},"event":{"const":"ping"}},"required":["ok","id","event"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}},"/webhooks/{id}":{"delete":{"operationId":"deleteWebhook","tags":["Webhooks"],"summary":"Disable a subscription","description":"Only an enabled hook belonging to the selected workspace can be disabled. A subsequent delete returns 404. Already queued delivery may still complete.","parameters":[{"name":"X-Eve-Client","in":"header","required":false,"schema":{"type":"string","format":"uuid"},"description":"Optional authorized Team workspace ID from GET /workspaces. Omit to use the key's home workspace."},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response. Read outcome fields; success does not imply delivery.","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"id":{"type":"string","format":"uuid"}},"required":["ok","id"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"401":{"description":"Missing, invalid or revoked key","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"403":{"description":"Workspace mismatch or channel disabled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"404":{"description":"Resource unavailable in this workspace","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"409":{"description":"Revision, identity or state conflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"429":{"description":"Rate limit; respect Retry-After when provided","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"500":{"description":"Request failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}},"503":{"description":"Dependency unavailable; identity may be unknown","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}},"additionalProperties":true}}}}}}}},"components":{"securitySchemes":{"WorkspaceKey":{"type":"http","scheme":"bearer","bearerFormat":"Workspace MCP key","description":"Keep the key in a server-side secret. Do not send Pump keys to X or data vendors."}}}}