---
title: "Create a converge action"
method: POST
path: "/v2/converge"
tags: ["drift_Converge"]
---

# Create a converge action

`POST /v2/converge`

POST converge (V2). Assigns a device to a specific blueprint (and blueprint version) and triggers the converge workflow. Converge brings the device into alignment with the selected blueprint configuration, including apps, files, restrictions, and platform settings. What this endpoint does Assigns the device to the provided blueprint_id. Targets a specific blueprint_version_id. Queues a converge action (status: QUEUED) for execution. Optionally applies provisioning-related behavior via converge_with_provision_option. Workflow Use Get all blueprints (V2) to retrieve the desired blueprint_id and blueprint_version_id. Use a device listing endpoint to retrieve the device_id or group_id. Send a POST request to /api/v2/converge with the required identifiers. Monitor the converge/command status to confirm successful application.

## Request body

- DriftConvergePOST
  - `device_id` string, uuid, required — ID of the device
  - `converge_with_provision_option` boolean, required
  - `schedule_type` 'IMMEDIATE' | 'WINDOW' — Following Schedule types are supported ``` * IMMEDIATE: Schedule the command to execcute Immediately * WINDOW: Schedule the command to execute within the given window ```
  - `schedule_args` object

## Response `201`

Converge action successfully created.

- object
  - `content` DriftConverge
    - `id` string, uuid — Unique converge identifier
    - `device_id` string, uuid — ID of the device
    - `converge_with_provision_option` boolean
    - `blueprint_info` DriftBlueprintsInfo
      - `blueprint_id` string, uuid — Unique blueprint ID
      - `blueprint_version_id` string, uuid — Version ID of blueprint
    - `schedule_type` 'IMMEDIATE' | 'WINDOW' — Following Schedule types are supported ``` * IMMEDIATE: Schedule the command to execcute Immediately * WINDOW: Schedule the command to execute within the given window ```
    - `schedule_args` object
    - `status` 'QUEUED' | 'PROCESSING' | 'IN_PROGRESS' | 'SUCCESS' | 'FAILURE' — Current aggregrated status of the converge action
    - `reason` string — details briefing the reason for current converge status
    - `created_by` string — user id of the user
    - `created_at` string, date-time — Creation timestamp of converge
    - `updated_at` string, date-time — Updation timestamp of converge

## Other responses

- `400` — Bad request
- `401` — Authorization information is missing or invalid.
- `500` — Internal server error

---

[API](https://skmtc.net/esper/apis/esper-api-reference.md) · [All operations](https://skmtc.net/esper/apis/esper-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/esper/esper-api-reference/revisions/e1f64cbb488e/schema)
