Confirm Opportunity Action
Confirm one opportunity's linked Reddit action for execution: approve it, resolve the send schedule, and queue Desktop execution. This is the send step, so API keys need reddit:write:dangerous via the automation preset. Cache policy: live. Idempotency: required. Auth modes: api_key, mcp_oauth, session_bearer.
Confirm one opportunity's linked Reddit action for execution: approve it, resolve the send schedule, and queue Desktop execution. This is the send step, so API keys need reddit:write:dangerous via the automation preset. Cache policy: live. Idempotency: required. Auth modes: api_key, mcp_oauth, session_bearer.
Rankhog organization API key sent as Authorization: Bearer rhog_....
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/agent/v1/opportunities/confirm" \ -H "Content-Type: application/json" \ -d '{ "managedRedditAccountId": "mra_2x9rnkhdemo", "organizationId": "org_2x9rnkhdemo", "websiteId": "site_2x9rnkhdemo", "expectedDraftRevision": 3, "idempotencyKey": "confirm-opp-2026-06-17-001", "opportunityId": "opp_2x9opportunity", "when": { "mode": "now" } }'{ "executedRedditActionId": null, "jobId": "job_2x9rnkhdemo", "opportunityId": "opp_2x9opportunity", "outcome": "confirmed", "plannedRedditActionId": "act_2x9planned", "schedule": { "delayReason": null, "mode": "now", "scheduledStartAt": "2026-06-17T12:00:00.000Z" }}{ "error": { "code": "agentic_invalid_input", "details": { "issues": [ { "code": "invalid_type", "message": "Expected string, received undefined.", "path": [ "organizationId" ] } ] }, "message": "Request body did not match the agentic capability schema." }}{ "error": { "code": "agentic_unauthorized", "message": "Authenticate before using Rankhog agentic capabilities." }}{ "error": { "code": "agentic_paid_plan_required", "details": { "managedAccountBillingStatus": "active", "subscriptionStatus": "past_due" }, "message": "Rankhog agentic capabilities are available only for active or trialing paid workspaces." }}{ "error": { "code": "agentic_missing_scope", "details": { "missingScopes": [ "rankhog:read", "reddit:draft:write", "reddit:write:dangerous" ] }, "message": "Missing required OAuth scope: rankhog:read, reddit:draft:write, reddit:write:dangerous." }}{ "error": { "code": "agentic_managed_account_not_found", "message": "Managed Reddit account not found." }}{ "error": { "code": "agentic_managed_account_inactive", "details": { "managedAccountStatus": "setup_required" }, "message": "This managed Reddit account must be active before browser-backed agentic tools can run." }}{ "error": { "code": "agentic_opportunity_action_invalid", "message": "Research items run on their own. There is nothing to confirm." }}{ "error": { "code": "agentic_internal_error", "message": "Rankhog could not complete this agentic request." }}List Planned Jobs POST
List planned Rankhog jobs for an organization the actor can access. Cache policy: live. Idempotency: none. Auth modes: api_key, mcp_oauth, session_bearer.
Cancel Opportunity Execution POST
Cancel one opportunity's pending execution and dismiss the opportunity. Running Reddit writes cannot be stopped mid-flight; their approval is rejected so the preflight aborts. Cache policy: live. Idempotency: required. Auth modes: api_key, mcp_oauth, session_bearer.