---
title: "Push Agent Workflow"
method: POST
path: "/v1/agents/{agent_id}/workflow/push"
tags: ["Agent Workflow"]
---

# Push Agent Workflow

`POST /v1/agents/{agent_id}/workflow/push`

Push Bluejay's stored workflow back to the agent's source provider.

``force=true`` bypasses DFCX conflict detection (use when you want to
overwrite remote drift).  Non-DFCX providers ignore the flag.

``create_version=true`` (DFCX only) snapshots the flows/playbooks the push
actually changed into new immutable versions, recording them in the version
ledger. Snapshotting only-changed resources keeps version counts down and is
why it rides on push: the remote draft only reflects Bluejay's edits *after*
a successful push.

Returns 409 with ``{conflicts}`` when remote has drifted and force is False.
Returns 207 with ``{results}`` when some DFCX SDK calls succeed and some fail.

## Path parameters

- `agent_id` string, required

## Query parameters

- `branch_id` string, nullable
- `force` boolean
- `create_version` boolean
- `version_description` string, nullable

## Headers

- `X-API-Key` string, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/getbluejay/apis/bluejay-api.md) · [All operations](https://skmtc.net/getbluejay/apis/bluejay-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/getbluejay/bluejay-api/versions/f48cef80963f/schema)
