## Create a new workflow instance `client.Workflows.Instances.New(ctx, workflowName, params) (*InstanceNewResponse, error)` **post** `/accounts/{account_id}/workflows/{workflow_name}/instances` Creates a new instance of a workflow, starting its execution. ### Parameters - `workflowName string` - `params InstanceNewParams` - `AccountID param.Field[string]` Path param - `InstanceID param.Field[string]` Body param - `InstanceRetention param.Field[InstanceNewParamsInstanceRetention]` Body param - `ErrorRetention InstanceNewParamsInstanceRetentionErrorRetentionUnion` Specifies the duration in milliseconds or as a string like '5 minutes'. - `UnionInt` - `UnionString` - `SuccessRetention InstanceNewParamsInstanceRetentionSuccessRetentionUnion` Specifies the duration in milliseconds or as a string like '5 minutes'. - `UnionInt` - `UnionString` - `Params param.Field[unknown]` Body param ### Returns - `type InstanceNewResponse struct{…}` - `ID string` - `Status InstanceNewResponseStatus` - `const InstanceNewResponseStatusQueued InstanceNewResponseStatus = "queued"` - `const InstanceNewResponseStatusRunning InstanceNewResponseStatus = "running"` - `const InstanceNewResponseStatusPaused InstanceNewResponseStatus = "paused"` - `const InstanceNewResponseStatusErrored InstanceNewResponseStatus = "errored"` - `const InstanceNewResponseStatusTerminated InstanceNewResponseStatus = "terminated"` - `const InstanceNewResponseStatusComplete InstanceNewResponseStatus = "complete"` - `const InstanceNewResponseStatusWaitingForPause InstanceNewResponseStatus = "waitingForPause"` - `const InstanceNewResponseStatusWaiting InstanceNewResponseStatus = "waiting"` - `VersionID string` - `WorkflowID string` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/workflows" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) instance, err := client.Workflows.Instances.New( context.TODO(), "x", workflows.InstanceNewParams{ AccountID: cloudflare.F("account_id"), }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", instance.ID) } ``` #### Response ```json { "errors": [ { "code": 0, "message": "message" } ], "messages": [ { "code": 0, "message": "message" } ], "result": { "id": "x", "status": "queued", "version_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "workflow_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e" }, "success": true, "result_info": { "count": 0, "per_page": 0, "total_count": 0, "cursor": "cursor", "page": 0 } } ```