Skip to content

ConfigCat Public Management API API

by configcat.com

HTTP BasicHTTPSDevelopment
Open documentation ↗

Overview

**Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON and JSON+HAL format. Do not use this API for accessing and evaluating feature flag values. Use the [SDKs instead](https://configcat.com/docs/sdk-reference/overview). # OpenAPI Specification The complete specification is publicly available here: [swagger.json](v1/swagger.json). You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). <!-- ReDoc-Inject: <security-definitions> --> # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header.

ConfigCat Public Management API is a development API from configcat.com. Requests are authenticated with HTTP Basic auth. It is served over HTTPS. Its OpenAPI description documents 62 endpoints.

At a glance

Authentication
HTTP Basic
HTTPS
Yes
CORS
Unknown
Category
Development
Base URL
https://api.configcat.com
Version
v1
Endpoints
62
Spec updated
2023-03-06

Make a first request

Replace the placeholders; the documentation says exactly where credentials go.

cURL
curl -X GET "https://api.configcat.com/v1/me" \
  -H "Accept: application/json" \
  -H "Authorization: Basic BASE64_USER_PASSWORD"
JavaScript
const response = await fetch("https://api.configcat.com/v1/me", {
  method: "GET",
  headers: {
    "Accept": "application/json",
    "Authorization": "Basic BASE64_USER_PASSWORD",
  },
});
const data = await response.json();
console.log(data);
Python
import requests

response = requests.request(
    "GET",
    "https://api.configcat.com/v1/me",
    headers={
    "Accept": "application/json",
    "Authorization": "Basic BASE64_USER_PASSWORD",
    },
    timeout=30,
)
print(response.json())

Endpoints

MethodPathWhat it does
POST/v1/code-references—
POST/v1/code-references/delete-reports—
GET/v1/configs/{configId}Get Config
PUT/v1/configs/{configId}Update Config
DELETE/v1/configs/{configId}Delete Config
GET/v1/configs/{configId}/deleted-settingsList Deleted Settings
GET/v1/configs/{configId}/environments/{environmentId}Get SDK Key
GET/v1/configs/{configId}/environments/{environmentId}/valuesGet values
GET/v1/configs/{configId}/settingsList Flags
POST/v1/configs/{configId}/settingsCreate Flag
GET/v1/environments/{environmentId}Get Environment
PUT/v1/environments/{environmentId}Update Environment
DELETE/v1/environments/{environmentId}Delete Environment
POST/v1/environments/{environmentId}/settings/{settingId}/integrationLinks/{integrationLinkType}/{key}Add or update Integration link
DELETE/v1/environments/{environmentId}/settings/{settingId}/integrationLinks/{integrationLinkType}/{key}Delete Integration link
GET/v1/environments/{environmentId}/settings/{settingId}/valueGet value
PUT/v1/environments/{environmentId}/settings/{settingId}/valueReplace value
PATCH/v1/environments/{environmentId}/settings/{settingId}/valueUpdate value
GET/v1/integrationLink/{integrationLinkType}/{key}/detailsGet Integration link
POST/v1/jira/Connect—
POST/v1/jira/environments/{environmentId}/settings/{settingId}/integrationLinks/{key}jira-add-or-update-integration-link
GET/v1/meGet authenticated user details
GET/v1/organizationsList Organizations
GET/v1/organizations/{organizationId}/auditlogsList Audit log items for Organization
GET/v1/organizations/{organizationId}/membersList Organization Members
POST/v1/organizations/{organizationId}/members/{userId}Update Member Permissions
DELETE/v1/organizations/{organizationId}/members/{userId}Delete Member from Organization
POST/v1/organizations/{organizationId}/productsCreate Product
GET/v1/permissions/{permissionGroupId}Get Permission Group
PUT/v1/permissions/{permissionGroupId}Update Permission Group
DELETE/v1/permissions/{permissionGroupId}Delete Permission Group
GET/v1/productsList Products
GET/v1/products/{productId}Get Product
PUT/v1/products/{productId}Update Product
DELETE/v1/products/{productId}Delete Product
GET/v1/products/{productId}/auditlogsList Audit log items for Product
GET/v1/products/{productId}/configsList Configs
POST/v1/products/{productId}/configsCreate Config
GET/v1/products/{productId}/environmentsList Environments
POST/v1/products/{productId}/environmentsCreate Environment
GET/v1/products/{productId}/membersList Product Members
POST/v1/products/{productId}/members/inviteInvite Member
DELETE/v1/products/{productId}/members/{userId}Delete Member from Product
GET/v1/products/{productId}/permissionsList Permission Groups
POST/v1/products/{productId}/permissionsCreate Permission Group
GET/v1/products/{productId}/segmentsList Segments
POST/v1/products/{productId}/segmentsCreate Segment
GET/v1/products/{productId}/tagsList Tags
POST/v1/products/{productId}/tagsCreate Tag
GET/v1/segments/{segmentId}Get Segment
PUT/v1/segments/{segmentId}Update Segment
DELETE/v1/segments/{segmentId}Delete Segment
GET/v1/settings/{settingId}Get Flag
PATCH/v1/settings/{settingId}Update Flag
DELETE/v1/settings/{settingId}Delete Flag
GET/v1/settings/{settingKeyOrId}/valueGet value
PUT/v1/settings/{settingKeyOrId}/valueReplace value
PATCH/v1/settings/{settingKeyOrId}/valueUpdate value
GET/v1/tags/{tagId}Get Tag
PUT/v1/tags/{tagId}Update Tag
DELETE/v1/tags/{tagId}Delete Tag
GET/v1/tags/{tagId}/settingsList Settings by Tag

Questions

Does the ConfigCat Public Management API API need an API key?

Yes. The ConfigCat Public Management API API uses HTTP Basic authentication; the documentation explains how to get credentials.

Does the ConfigCat Public Management API API support HTTPS?

Yes, the ConfigCat Public Management API API is served over HTTPS.

How many endpoints does the ConfigCat Public Management API API have?

Its OpenAPI description lists 62 endpoints in version v1. All of them are shown on this page.

What are alternatives to the ConfigCat Public Management API API?

Other Development APIs include Cloudflare, Azure DevOps, IPify, App Store Connect API, StackExchange.

Compare alternatives →

Listed from APIs.guru (CC0).