GActionGoHighLevelUpdated June 2026

How do I update a GoHighLevel opportunity's stage?

Short answer: You can update opportunity stage in GoHighLevel by hand from its own interface, but it won’t repeat itself. On TinyCommand, add the GoHighLevel Update Opportunity Stage action to a workflow, map its 5 inputs from any upstream app, and it runs automatically every time the trigger fires. No code, and a free tier to start.

Update Opportunity Stage in GoHighLevel — start free
Inputs

The fields this action accepts.

Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.

FieldTypeRequiredDescription
Opportunity ID
opportunityId
stringRequiredThe opportunity to update.
New Stage ID
pipelineStageId
stringOptionalMove the opportunity to this pipeline stage.
Status
status
optionsOptionalLifecycle status to set.
Monetary Value
monetaryValue
numberOptionalUpdated deal value.
Opportunity Name
name
stringOptionalRename the opportunity.
Sample request
{
"opportunityId": "Tu1Lf5wYC5SqQ8oa6L2y",
"pipelineStageId": "stage_xyz",
"status": "{{trigger.status}}",
"monetaryValue": "{{trigger.monetaryValue}}",
"name": "{{trigger.name}}"
}
Returns
{
"opportunity": {
"id": "Tu1Lf5wYC5SqQ8oa6L2y",
"name": "Acme Inc — Annual Plan",
"status": "won",
"updatedAt": "2026-04-11T12:00:00.000Z",
"monetaryValue": 5000,
"pipelineStageId": "stage_won"
}
}

Use these fields in downstream nodes for routing, logging, or error handling.

Triggered by

Apps that pair well as the trigger for Update Opportunity Stage.

Any of these apps can fire this action as part of a workflow.

FAQ

Questions about Update Opportunity Stage.

What does the Update Opportunity Stage action do in GoHighLevel?
Moves an opportunity to a new pipeline stage. For "external signal indicates deal advanced → reflect in GHL" sync workflows or for "auto-advance based on contact action" automation patterns.
What inputs does Update Opportunity Stage require?
Required: Opportunity ID. Every input accepts a static value or a variable from any upstream node in your workflow.
Can I use dynamic inputs from earlier workflow nodes?
Yes. Any field on this action can pull values from upstream nodes, whether that's a form response, a trigger payload, an AI output, or a lookup result.
What happens if GoHighLevel returns an error?
The workflow pauses on the failed node, the error message is captured in the run log, and you can retry the run with one click. Auto-retry policies are configurable per workflow with exponential backoff up to 5 attempts.
Does Update Opportunity Stage support batch operations?
Yes. Run Update Opportunity Stage inside a Loop node to process arrays. TinyCommand handles GoHighLevel's rate limits automatically so you don't have to throttle manually.
More actions

Other GoHighLevel actions.

Action
Add GoHighLevel Note
Attaches a note to a contact's timeline. Useful for "call summary → log to contact" or "support ticket resolution → add to client history" workflows.
Action
Create GoHighLevel Contact
Inserts a contact with email, name, phone, custom fields, and starting tags. The base hook for "form submission → push to GHL" sync workflows in agency-managed sub-accounts.
Action
Create GoHighLevel Opportunity
Creates an opportunity with value, stage, owner, contact link. For "qualified lead → auto-create opportunity in the right pipeline" workflows.
Action
Get GoHighLevel Contact
Returns a contact by ID with all standard and custom fields plus tags, opportunities, and recent activities. The standard lookup before update or for context-enrichment workflows.
Action
Search GoHighLevel Contacts
Lookup by email, phone, name, or tag. The standard "find before update" dedupe pattern for upsert workflows.
Action
Send GoHighLevel Email
Sends a one-shot email to a contact via the GHL email system. Useful for transactional sends triggered by external events that should appear in the GHL contact timeline.
Update Opportunity Stage in GoHighLevel — start free