Skip to content

Latest commit

 

History

History
371 lines (287 loc) · 16.3 KB

File metadata and controls

371 lines (287 loc) · 16.3 KB

IntegrationsApi

All URIs are relative to https://api.configcat.com

Method HTTP request Description
createIntegration POST /v1/products/{productId}/integrations Create Integration
deleteIntegration DELETE /v1/integrations/{integrationId} Delete Integration
getIntegration GET /v1/integrations/{integrationId} Get Integration
getIntegrations GET /v1/products/{productId}/integrations List Integrations
updateIntegration PUT /v1/integrations/{integrationId} Update Integration

createIntegration

IntegrationModel createIntegration(productId, createIntegrationModel)

Create Integration

This endpoint creates a new Integration in a specified Product identified by the `productId` parameter, which can be obtained from the List Products endpoint. The Parameters dictionary differs for each IntegrationType: - Datadog - `apikey`: Required. Datadog API key. - `site`: Datadog site. Available values: `Us`, `Eu`, `Us1Fed`, `Us3`, `Us5`. Default: `Us`. - Slack Connecting the Slack integration through the Public Management API will not post messages with the ConfigCat Feature Flags Slack app but with an incoming webhook. - `incoming_webhook.url`: Required. The incoming webhook URL where the integration should post messages. - `includeSensitiveData`: Set to "true" to include sensitive (hashed) comparison values. By default, the integration will mask these values in the posted messages. We recommend hiding sensitive comparison values for shared or public Slack channels. - Amplitude - `apiKey`: Required. Amplitude API Key. - `secretKey`: Required. Amplitude Secret Key. - Mixpanel - `serviceAccountUserName`: Required. Mixpanel Service Account Username. - `serviceAccountSecret`: Required. Mixpanel Service Account Secret. - `projectId`: Required. Mixpanel Project ID. - `server`: Mixpanel Server. Available values: `StandardServer`, `EUResidencyServer`. Default: `StandardServer`. - Twilio Segment - `writeKey`: Required. Twilio Segment Write Key. - `server`: Twilio Segment Server. Available values: `Us`, `Eu`. Default: `Us`. - PubNub (work in progress)

Example

// Import classes:
import com.configcat.publicapi.java.client.ApiClient;
import com.configcat.publicapi.java.client.ApiException;
import com.configcat.publicapi.java.client.Configuration;
import com.configcat.publicapi.java.client.auth.*;
import com.configcat.publicapi.java.client.models.*;
import com.configcat.publicapi.java.client.api.IntegrationsApi;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = Configuration.getDefaultApiClient();
    defaultClient.setBasePath("https://api.configcat.com");
    
    // Configure HTTP basic authorization: Basic
    HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
    Basic.setUsername("YOUR USERNAME");
    Basic.setPassword("YOUR PASSWORD");

    IntegrationsApi apiInstance = new IntegrationsApi(defaultClient);
    UUID productId = UUID.randomUUID(); // UUID | The identifier of the Product.
    CreateIntegrationModel createIntegrationModel = new CreateIntegrationModel(); // CreateIntegrationModel | 
    try {
      IntegrationModel result = apiInstance.createIntegration(productId, createIntegrationModel);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling IntegrationsApi#createIntegration");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Parameters

Name Type Description Notes
productId UUID The identifier of the Product.
createIntegrationModel CreateIntegrationModel

Return type

IntegrationModel

Authorization

Basic

HTTP request headers

  • Content-Type: application/json, text/json, application/*+json
  • Accept: application/json

HTTP response details

Status code Description Response headers
201 When the creation was successful. -
400 Bad request. -
404 Not found. -
429 Too many requests. In case of the request rate exceeds the rate limits. -

deleteIntegration

deleteIntegration(integrationId)

Delete Integration

This endpoint removes a Integration identified by the `integrationId` parameter.

Example

// Import classes:
import com.configcat.publicapi.java.client.ApiClient;
import com.configcat.publicapi.java.client.ApiException;
import com.configcat.publicapi.java.client.Configuration;
import com.configcat.publicapi.java.client.auth.*;
import com.configcat.publicapi.java.client.models.*;
import com.configcat.publicapi.java.client.api.IntegrationsApi;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = Configuration.getDefaultApiClient();
    defaultClient.setBasePath("https://api.configcat.com");
    
    // Configure HTTP basic authorization: Basic
    HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
    Basic.setUsername("YOUR USERNAME");
    Basic.setPassword("YOUR PASSWORD");

    IntegrationsApi apiInstance = new IntegrationsApi(defaultClient);
    UUID integrationId = UUID.randomUUID(); // UUID | The identifier of the Integration.
    try {
      apiInstance.deleteIntegration(integrationId);
    } catch (ApiException e) {
      System.err.println("Exception when calling IntegrationsApi#deleteIntegration");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Parameters

Name Type Description Notes
integrationId UUID The identifier of the Integration.

Return type

null (empty response body)

Authorization

Basic

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

HTTP response details

Status code Description Response headers
204 When the delete was successful. -
400 Bad request. -
404 Not found. -
429 Too many requests. In case of the request rate exceeds the rate limits. -

getIntegration

IntegrationModel getIntegration(integrationId)

Get Integration

This endpoint returns the metadata of an Integration identified by the `integrationId`.

Example

// Import classes:
import com.configcat.publicapi.java.client.ApiClient;
import com.configcat.publicapi.java.client.ApiException;
import com.configcat.publicapi.java.client.Configuration;
import com.configcat.publicapi.java.client.auth.*;
import com.configcat.publicapi.java.client.models.*;
import com.configcat.publicapi.java.client.api.IntegrationsApi;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = Configuration.getDefaultApiClient();
    defaultClient.setBasePath("https://api.configcat.com");
    
    // Configure HTTP basic authorization: Basic
    HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
    Basic.setUsername("YOUR USERNAME");
    Basic.setPassword("YOUR PASSWORD");

    IntegrationsApi apiInstance = new IntegrationsApi(defaultClient);
    UUID integrationId = UUID.randomUUID(); // UUID | The identifier of the Integration.
    try {
      IntegrationModel result = apiInstance.getIntegration(integrationId);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling IntegrationsApi#getIntegration");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Parameters

Name Type Description Notes
integrationId UUID The identifier of the Integration.

Return type

IntegrationModel

Authorization

Basic

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 When everything is ok, the integration data returned. -
400 Bad request. -
404 Not found. -
429 Too many requests. In case of the request rate exceeds the rate limits. -

getIntegrations

IntegrationsModel getIntegrations(productId)

List Integrations

This endpoint returns the list of the Integrations that belongs to the given Product identified by the `productId` parameter, which can be obtained from the List Products endpoint.

Example

// Import classes:
import com.configcat.publicapi.java.client.ApiClient;
import com.configcat.publicapi.java.client.ApiException;
import com.configcat.publicapi.java.client.Configuration;
import com.configcat.publicapi.java.client.auth.*;
import com.configcat.publicapi.java.client.models.*;
import com.configcat.publicapi.java.client.api.IntegrationsApi;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = Configuration.getDefaultApiClient();
    defaultClient.setBasePath("https://api.configcat.com");
    
    // Configure HTTP basic authorization: Basic
    HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
    Basic.setUsername("YOUR USERNAME");
    Basic.setPassword("YOUR PASSWORD");

    IntegrationsApi apiInstance = new IntegrationsApi(defaultClient);
    UUID productId = UUID.randomUUID(); // UUID | The identifier of the Product.
    try {
      IntegrationsModel result = apiInstance.getIntegrations(productId);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling IntegrationsApi#getIntegrations");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Parameters

Name Type Description Notes
productId UUID The identifier of the Product.

Return type

IntegrationsModel

Authorization

Basic

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 -
400 Bad request. -
404 Not found. -
429 Too many requests. In case of the request rate exceeds the rate limits. -

updateIntegration

IntegrationModel updateIntegration(integrationId, modifyIntegrationRequest)

Update Integration

This endpoint updates a Config identified by the `integrationId` parameter. The Parameters dictionary differs for each IntegrationType: - Datadog - `apikey`: Required. Datadog API key. - `site`: Datadog site. Available values: `Us`, `Eu`, `Us1Fed`, `Us3`, `Us5`. Default: `Us`. - Slack Connecting the Slack integration through the Public Management API will not post messages with the ConfigCat Feature Flags Slack app but with an incoming webhook. - `incoming_webhook.url`: Required. The incoming webhook URL where the integration should post messages. - `includeSensitiveData`: Set to "true" to include sensitive (hashed) comparison values. By default, the integration will mask these values in the posted messages. We recommend hiding sensitive comparison values for shared or public Slack channels. - Amplitude - `apiKey`: Required. Amplitude API Key. - `secretKey`: Required. Amplitude Secret Key. - Mixpanel - `serviceAccountUserName`: Required. Mixpanel Service Account Username. - `serviceAccountSecret`: Required. Mixpanel Service Account Secret. - `projectId`: Required. Mixpanel Project ID. - `server`: Mixpanel Server. Available values: `StandardServer`, `EUResidencyServer`. Default: `StandardServer`. - Twilio Segment - `writeKey`: Required. Twilio Segment Write Key. - `server`: Twilio Segment Server. Available values: `Us`, `Eu`. Default: `Us`. - PubNub (work in progress)

Example

// Import classes:
import com.configcat.publicapi.java.client.ApiClient;
import com.configcat.publicapi.java.client.ApiException;
import com.configcat.publicapi.java.client.Configuration;
import com.configcat.publicapi.java.client.auth.*;
import com.configcat.publicapi.java.client.models.*;
import com.configcat.publicapi.java.client.api.IntegrationsApi;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = Configuration.getDefaultApiClient();
    defaultClient.setBasePath("https://api.configcat.com");
    
    // Configure HTTP basic authorization: Basic
    HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
    Basic.setUsername("YOUR USERNAME");
    Basic.setPassword("YOUR PASSWORD");

    IntegrationsApi apiInstance = new IntegrationsApi(defaultClient);
    UUID integrationId = UUID.randomUUID(); // UUID | The identifier of the Integration.
    ModifyIntegrationRequest modifyIntegrationRequest = new ModifyIntegrationRequest(); // ModifyIntegrationRequest | 
    try {
      IntegrationModel result = apiInstance.updateIntegration(integrationId, modifyIntegrationRequest);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling IntegrationsApi#updateIntegration");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Parameters

Name Type Description Notes
integrationId UUID The identifier of the Integration.
modifyIntegrationRequest ModifyIntegrationRequest

Return type

IntegrationModel

Authorization

Basic

HTTP request headers

  • Content-Type: application/json, text/json, application/*+json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 -
400 Bad request. -
404 Not found. -
429 Too many requests. In case of the request rate exceeds the rate limits. -