---
title: "Create a Compute Pool"
method: POST
path: "/fcpm/v2/compute-pools"
tags: ["Compute Pools (fcpm/v2)"]
---

# Create a Compute Pool

`POST /fcpm/v2/compute-pools`

[![General Availability](https://img.shields.io/badge/Lifecycle%20Stage-General%20Availability-%2345c6e8)](#section/Versioning/API-Lifecycle-Policy)

Make a request to create a compute pool.

## Request body

- object — A Compute Pool represents a set of compute resources that is used to run your Queries. The resources (CPUs, memory,…) provided by a Compute Pool are shared between all Queries that use it. Note that the Compute Pool API supports a limited pagination API, only the `next` field will be populated. ## The Compute Pools Model <SchemaDefinition schemaRef="#/components/schemas/fcpm.v2.ComputePool" />
  - `api_version` 'fcpm/v2' — APIVersion defines the schema version of this representation of a resource.
  - `kind` 'ComputePool' — Kind defines the object this REST resource represents.
  - `id` string — ID is the "natural identifier" for an object within its scope/namespace; it is normally unique across time but not space. That is, you can assume that the ID will not be reclaimed and reused after an object is deleted ("time"); however, it may collide with IDs for other object `kinds` or objects of the same `kind` within a different scope/namespace ("space").
  - `metadata` object — ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.
    - `self` string, uri, required — Self is a Uniform Resource Locator (URL) at which an object can be addressed. This URL encodes the service location, API version, and other particulars necessary to locate the resource at a point in time
    - `resource_name` string, uri — Resource Name is a Uniform Resource Identifier (URI) that is globally unique across space and time. It is represented as a Confluent Resource Name
    - `created_at` string, date-time — The date and time at which this object was created. It is represented in RFC3339 format and is in UTC.
    - `updated_at` string, date-time — The date and time at which this object was last updated. It is represented in RFC3339 format and is in UTC.
    - `deleted_at` string, date-time — The date and time at which this object was (or will be) deleted. It is represented in RFC3339 format and is in UTC.
  - `spec` object, required — The desired state of the Compute Pool
    - `display_name` string, required — The name of the Flink compute pool.
    - `cloud` string, required — The cloud service provider that runs the compute pool.
    - `region` string, required — Flink compute pools in the region provided will be able to use this identity pool
    - `max_cfu` integer, required — Maximum number of Confluent Flink Units (CFUs) that the Flink compute pool should auto-scale to.
    - `enable_ai` boolean — The flag to enable AI computing using Ray for the Flink compute pool. It's available in the Early Access API lifecycle stage only.
    - `default_pool` boolean — The flag to indicate whether the Flink compute pool is a default compute pool or not. Only one default compute pool per environment and region is allowed.
    - `environment` object, required — The environment to which this belongs.
      - `id` string, required — ID of the referred resource
      - `related` string, uri, required — API URL for accessing or modifying the referred object
      - `resource_name` string, uri, required — CRN reference to the referred resource
    - `network` object — The network to which this belongs.
      - `id` string, required — ID of the referred resource
      - `environment` string — Environment of the referred resource, if env-scoped
      - `related` string, uri, required — API URL for accessing or modifying the referred object
      - `resource_name` string, uri, required — CRN reference to the referred resource
  - `status` FcpmV2ComputePoolStatus — The status of the Compute Pool
    - `phase` string, required — Status of the Flink compute pool.
    - `current_cfu` integer, required — The number of Confluent Flink Units (CFUs) currently allocated to this Flink compute pool.

## Response `202`

A Compute Pool is being created.

- object — A Compute Pool represents a set of compute resources that is used to run your Queries. The resources (CPUs, memory,…) provided by a Compute Pool are shared between all Queries that use it. Note that the Compute Pool API supports a limited pagination API, only the `next` field will be populated. ## The Compute Pools Model <SchemaDefinition schemaRef="#/components/schemas/fcpm.v2.ComputePool" />
  - `api_version` 'fcpm/v2' — APIVersion defines the schema version of this representation of a resource.
  - `kind` 'ComputePool' — Kind defines the object this REST resource represents.
  - `id` string — ID is the "natural identifier" for an object within its scope/namespace; it is normally unique across time but not space. That is, you can assume that the ID will not be reclaimed and reused after an object is deleted ("time"); however, it may collide with IDs for other object `kinds` or objects of the same `kind` within a different scope/namespace ("space").
  - `metadata` object — ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.
    - `self` string, uri, required — Self is a Uniform Resource Locator (URL) at which an object can be addressed. This URL encodes the service location, API version, and other particulars necessary to locate the resource at a point in time
    - `resource_name` string, uri — Resource Name is a Uniform Resource Identifier (URI) that is globally unique across space and time. It is represented as a Confluent Resource Name
    - `created_at` string, date-time — The date and time at which this object was created. It is represented in RFC3339 format and is in UTC.
    - `updated_at` string, date-time — The date and time at which this object was last updated. It is represented in RFC3339 format and is in UTC.
    - `deleted_at` string, date-time — The date and time at which this object was (or will be) deleted. It is represented in RFC3339 format and is in UTC.
  - `spec` object, required — The desired state of the Compute Pool
    - `display_name` string, required — The name of the Flink compute pool.
    - `cloud` string, required — The cloud service provider that runs the compute pool.
    - `region` string, required — Flink compute pools in the region provided will be able to use this identity pool
    - `max_cfu` integer, required — Maximum number of Confluent Flink Units (CFUs) that the Flink compute pool should auto-scale to.
    - `enable_ai` boolean — The flag to enable AI computing using Ray for the Flink compute pool. It's available in the Early Access API lifecycle stage only.
    - `default_pool` boolean — The flag to indicate whether the Flink compute pool is a default compute pool or not. Only one default compute pool per environment and region is allowed.
    - `environment` object, required — The environment to which this belongs.
      - `id` string, required — ID of the referred resource
      - `related` string, uri, required — API URL for accessing or modifying the referred object
      - `resource_name` string, uri, required — CRN reference to the referred resource
    - `network` object — The network to which this belongs.
      - `id` string, required — ID of the referred resource
      - `environment` string — Environment of the referred resource, if env-scoped
      - `related` string, uri, required — API URL for accessing or modifying the referred object
      - `resource_name` string, uri, required — CRN reference to the referred resource
  - `status` FcpmV2ComputePoolStatus, required — The status of the Compute Pool
    - `phase` string, required — Status of the Flink compute pool.
    - `current_cfu` integer, required — The number of Confluent Flink Units (CFUs) currently allocated to this Flink compute pool.

## Other responses

- `400` — Bad Request
- `401` — The request lacks valid authentication credentials for this resource.
- `403` — The access credentials were considered insufficient to grant access
- `409` — The request is in conflict with the current server state
- `422` — Validation Failed
- `429` — Rate Limit Exceeded
- `500` — Oops, something went wrong!

---

[API](https://skmtc.dev/confluent/apis/confluent-cloud-apis.md) · [All operations](https://skmtc.dev/confluent/apis/confluent-cloud-apis/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/confluent/confluent-cloud-apis/revisions/a6a73f98a698/schema)
