---
title: "Create an IP Filter"
method: POST
path: "/iam/v2/ip-filters"
tags: ["IP Filters (iam/v2)"]
---

# Create an IP Filter

`POST /iam/v2/ip-filters`

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

Make a request to create an IP filter.

## Request body

- object — `IP Filter` objects are bindings between IP Groups and Confluent resource(s). For example, a binding between "CorpNet" and "Management APIs" will enforce that access must come from one of the CIDR blocks associated with CorpNet. If there are multiple IP filters bound to a resource, a request matching any of the CIDR blocks for any of the IP Group will allow the request. If there are no IP Filters for a resource, then access will be granted to requests originating from any IP Address. ## The IP Filters Model <SchemaDefinition schemaRef="#/components/schemas/iam.v2.IpFilter" />
  - `api_version` 'iam/v2' — APIVersion defines the schema version of this representation of a resource.
  - `kind` 'IpFilter' — 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.
  - `filter_name` string, required — A human readable name for an IP Filter. Can contain any unicode letter or number, the ASCII space character, or any of the following special characters: `[`, `]`, `|`, `&`, `+`, `-`, `_`, `/`, `.`, `,`.
  - `resource_group` string, required — Scope of resources covered by this IP filter. Available resource groups include "management" and "multiple".
  - `resource_scope` string, uri — A CRN that specifies the scope of the ip filter, specifically the organization or environment. Without specifying this property, the ip filter would apply to the whole organization.
  - `operation_groups` string[] — Scope of resources covered by this IP filter. Resource group must be set to 'multiple' in order to use this property.During update operations, note that the operation groups passed in will replace the list of existing operation groups (passing in an empty list will remove all operation groups) from the filter (in line with the behavior for ip_groups).
  - `ip_groups` GlobalObjectReference[], required — A list of IP Groups.
    - `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

## Response `201`

An IP Filter was created.

- object — `IP Filter` objects are bindings between IP Groups and Confluent resource(s). For example, a binding between "CorpNet" and "Management APIs" will enforce that access must come from one of the CIDR blocks associated with CorpNet. If there are multiple IP filters bound to a resource, a request matching any of the CIDR blocks for any of the IP Group will allow the request. If there are no IP Filters for a resource, then access will be granted to requests originating from any IP Address. ## The IP Filters Model <SchemaDefinition schemaRef="#/components/schemas/iam.v2.IpFilter" />
  - `api_version` 'iam/v2' — APIVersion defines the schema version of this representation of a resource.
  - `kind` 'IpFilter' — 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.
  - `filter_name` string, required — A human readable name for an IP Filter. Can contain any unicode letter or number, the ASCII space character, or any of the following special characters: `[`, `]`, `|`, `&`, `+`, `-`, `_`, `/`, `.`, `,`.
  - `resource_group` string, required — Scope of resources covered by this IP filter. Available resource groups include "management" and "multiple".
  - `resource_scope` string, uri — A CRN that specifies the scope of the ip filter, specifically the organization or environment. Without specifying this property, the ip filter would apply to the whole organization.
  - `operation_groups` string[] — Scope of resources covered by this IP filter. Resource group must be set to 'multiple' in order to use this property.During update operations, note that the operation groups passed in will replace the list of existing operation groups (passing in an empty list will remove all operation groups) from the filter (in line with the behavior for ip_groups).
  - `ip_groups` GlobalObjectReference[], required — A list of IP Groups.
    - `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

## Other responses

- `400` — Bad Request
- `401` — The request lacks valid authentication credentials for this resource.
- `402` — The request would exceed one or more quotas.
- `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)
