---
title: "Ensure Crm List"
method: POST
path: "/api/crm/lists/ensure"
tags: ["growth-artifact-jobs"]
---

# Ensure Crm List

`POST /api/crm/lists/ensure`

## Request

- Base URL: `https://platform.verbiflow.com/api/bridge`
- URL: `https://platform.verbiflow.com/api/bridge/api/crm/lists/ensure`
- Auth: one of:
  - HTTP bearer and API key in header `x-flage-org-id`
  - HTTP bearer and API key in header `x-flage-org-slug`

Idempotently resolve or create one exact-name manual list.

This dedicated route lets the hosted operation ledger distinguish the
retry-safe ensure contract from the intentionally one-shot create route.

## Request body

- CreateCrmListRequest
  - `name` string, required
  - `object_type` 'contacts' | 'companies' | 'deals', required
  - `provider` 'hubspot'

## Response `200`

Successful Response

- CreateCrmListResponse
  - `created` boolean, required
  - `list_id` string, required
  - `name` string, required
  - `object_type` 'contacts' | 'companies' | 'deals', required
  - `object_type_id` string, required
  - `processing_type` 'MANUAL'
  - `provider` 'hubspot', required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/verbiflow/apis/verbiflow-sdk-http-contract.md) - [All operations](https://skmtc.dev/verbiflow/apis/verbiflow-sdk-http-contract/llms.txt) - [OpenAPI document](https://skmtc.dev/verbiflow/apis/verbiflow-sdk-http-contract/revisions/c80e903ef8f3?raw)
