Ana içeriğe atla

Endpoints

MethodPathDescription
GET/apiops/projects/{projectName}/apiProxies/{apiProxyName}/trafficLogSettings/List all environments’ settings
GET/apiops/projects/{projectName}/apiProxies/{apiProxyName}/trafficLogSettings/{environmentName}/Get specific environment settings
PUT/apiops/projects/{projectName}/apiProxies/{apiProxyName}/trafficLogSettings/{environmentName}/Update environment settings
PUT/apiops/projects/{projectName}/apiProxies/{apiProxyName}/trafficLogSettings/{environmentName}/methods/{methodName}/connectors/{connectorType}/Update method-level override
DELETE/apiops/projects/{projectName}/apiProxies/{apiProxyName}/trafficLogSettings/{environmentName}/methods/{methodName}/connectors/{connectorType}/Delete method-level override

Update Method-Level Connector Override

PUT /apiops/projects/{projectName}/apiProxies/{apiProxyName}/trafficLogSettings/{environmentName}/methods/{methodName}/connectors/{connectorType}/

Delete Method-Level Connector Override

DELETE /apiops/projects/{projectName}/apiProxies/{apiProxyName}/trafficLogSettings/{environmentName}/methods/{methodName}/connectors/{connectorType}/

List All Environments’ Settings

Endpoint

GET /apiops/projects/{projectName}/apiProxies/{apiProxyName}/trafficLogSettings/

Path Parameters

ParameterTypeRequiredDescription
projectNamestringYesProject name
apiProxyNamestringYesAPI Proxy name
environmentNamestringYesEnvironment name (e.g., production, tester)
methodNamestringConditionalAPI method name (only for method-level endpoints)
connectorTypestringConditionalConnector type (only for method-level endpoints). Values: ELASTICSEARCH_INDEX, DB_INSERT_UPDATE_DELETE, SYSLOG_SEND, WEBHOOK_SEND, RABBITMQ_SEND, ACTIVEMQ_SEND, KAFKA_SEND, GRAYLOG_SEND, LOGBACK_APPEND

GET: List All Environments’ Settings

Returns traffic log settings for all environments of the specified API Proxy. Connector keys are returned as connection names (not internal UUIDs).

cURL Example

curl -X GET \
  "https://demo.apinizer.com/apiops/projects/MyProject/apiProxies/MyAPI/trafficLogSettings/" \
  -H "Authorization: Bearer YOUR_TOKEN"

GET: Specific Environment Settings

Returns traffic log settings for a single environment.

cURL Example

curl -X GET \
  "https://demo.apinizer.com/apiops/projects/MyProject/apiProxies/MyAPI/trafficLogSettings/production/" \
  -H "Authorization: Bearer YOUR_TOKEN"

PUT: Update Environment Settings

Updates traffic log settings for a specific environment and deploys the changes.

Response

{
  "logParamRequestFromClient": true,
  "logHeaderRequestFromClient": true,
  "logBodyRequestFromClient": true,
  "logParamRequestToTarget": true,
  "logHeaderRequestToTarget": true,
  "logBodyRequestToTarget": true,
  "logHeaderResponseFromTarget": true,
  "logBodyResponseFromTarget": true,
  "logHeaderResponseToClient": true,
  "logBodyResponseToClient": true,
  "connectorSettingsMap": {
    "my-elasticsearch-connection": {
      "enabled": true,
      "logHeaderRequestFromClient": true,
      "logBodyRequestFromClient": true,
      "logBodyResponseFromTarget": true,
      "enableMetadataIdentification": true,
      "enableMetadataApiProxy": true,
      "enableMetadataRequest": true,
      "enableMetrics": true,
      "enableMetadataResponse": true,
      "enableSentAddress": true,
      "enableBodyFromClientSize": true,
      "sizeBodyFromClient": 2048,
      "enableBodyToTargetSize": true,
      "sizeBodyToTarget": 2048,
      "enableBodyFromTargetSize": true,
      "sizeBodyFromTarget": 2048,
      "enableBodyToClientSize": true,
      "sizeBodyToClient": 2048,
      "enablePrivacy": false,
      "privacyDefinitionList": []
    },
    "my-kafka-connection": {
      "enabled": true,
      "logBodyRequestFromClient": true,
      "logBodyResponseFromTarget": true
    }
  }
}

Request Body Fields (Top-Level)

FieldTypeRequiredDefaultDescription
logParamRequestFromClientbooleanNotrueLog query parameters from client request
logHeaderRequestFromClientbooleanNotrueLog headers from client request
logBodyRequestFromClientbooleanNotrueLog body from client request
logParamRequestToTargetbooleanNotrueLog query parameters sent to target
logHeaderRequestToTargetbooleanNotrueLog headers sent to target
logBodyRequestToTargetbooleanNotrueLog body sent to target
logHeaderResponseFromTargetbooleanNotrueLog headers from target response
logBodyResponseFromTargetbooleanNotrueLog body from target response
logHeaderResponseToClientbooleanNotrueLog headers sent to client response
logBodyResponseToClientbooleanNotrueLog body sent to client response
connectorSettingsMapobjectNoPer-connector settings. Key = connection name (as defined in Connections). See below.
methodOverrideListarrayNo[]Method-level connector overrides. See below.

connectorSettingsMap

The connectorSettingsMap is an object where each key is the connection name and each value contains the connector-specific log settings. Important: The connection must already exist and be configured as a connector (recipient) in the target environment. Use the Connections API to create connections first.

Connector Log Settings Fields

FieldTypeRequiredDefaultDescription
enabledbooleanNofalseEnable/disable this connector
logParamRequestFromClientbooleanNonullOverride: log query params from client
logHeaderRequestFromClientbooleanNonullOverride: log headers from client
logBodyRequestFromClientbooleanNonullOverride: log body from client
logParamRequestToTargetbooleanNonullOverride: log query params to target
logHeaderRequestToTargetbooleanNonullOverride: log headers to target
logBodyRequestToTargetbooleanNonullOverride: log body to target
logHeaderResponseFromTargetbooleanNonullOverride: log headers from target
logBodyResponseFromTargetbooleanNonullOverride: log body from target
logHeaderResponseToClientbooleanNonullOverride: log headers to client
logBodyResponseToClientbooleanNonullOverride: log body to client
enableMetadataIdentificationbooleanNonullLog identification metadata
enableMetadataApiProxybooleanNonullLog API proxy metadata
enableMetadataRequestbooleanNonullLog request metadata (IP, method, path, etc.)
enableMetricsbooleanNonullLog performance metrics (timing, size, retry)
enableMetadataResponsebooleanNonullLog response metadata (status code, error type)
enableSentAddressbooleanNonullLog routing address
enableBodyFromClientSizebooleanNonullEnable size limit for client request body
sizeBodyFromClientintegerNonullMax KB for client request body
enableBodyToTargetSizebooleanNonullEnable size limit for target request body
sizeBodyToTargetintegerNonullMax KB for target request body
enableBodyFromTargetSizebooleanNonullEnable size limit for target response body
sizeBodyFromTargetintegerNonullMax KB for target response body
enableBodyToClientSizebooleanNonullEnable size limit for client response body
sizeBodyToClientintegerNonullMax KB for client response body
enablePrivacybooleanNofalseEnable privacy masking
privacyDefinitionListarrayNo[]Privacy masking rules
Note: Fields set to null inherit from the parent (proxy-level defaults).

cURL Example: Enable Elasticsearch and Kafka Logging

curl -X PUT \
  "https://demo.apinizer.com/apiops/projects/MyProject/apiProxies/MyAPI/trafficLogSettings/production/" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "logHeaderRequestFromClient": true,
    "logBodyRequestFromClient": true,
    "logBodyResponseFromTarget": true,
    "connectorSettingsMap": {
      "my-elasticsearch-connection": {
        "enabled": true,
        "logBodyRequestFromClient": true,
        "logBodyResponseFromTarget": true,
        "enableBodyFromClientSize": true,
        "sizeBodyFromClient": 1024
      },
      "my-kafka-connection": {
        "enabled": true,
        "logBodyRequestFromClient": true
      }
    }
  }'

cURL Example: Minimal — Enable Only Elasticsearch

curl -X PUT \
  "https://demo.apinizer.com/apiops/projects/MyProject/apiProxies/MyAPI/trafficLogSettings/tester/" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "connectorSettingsMap": {
      "my-elasticsearch-connection": {
        "enabled": true
      }
    }
  }'

PUT: Method-Level Connector Override

Adds or updates a method-level connector override. This allows different log settings for specific API methods.

Path

PUT /apiops/projects/{projectName}/apiProxies/{apiProxyName}/trafficLogSettings/{environmentName}/methods/{methodName}/connectors/{connectorType}/

Request Body

Same as Connector Log Settings Fields above.

cURL Example

curl -X PUT \
  "https://demo.apinizer.com/apiops/projects/MyProject/apiProxies/MyAPI/trafficLogSettings/production/methods/getUserById/connectors/ELASTICSEARCH_INDEX/" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "enabled": true,
    "logBodyRequestFromClient": false,
    "logBodyResponseFromTarget": true,
    "enableBodyFromTargetSize": true,
    "sizeBodyFromTarget": 512
  }'

DELETE: Method-Level Connector Override

Removes a method-level connector override, reverting to proxy-level settings.

cURL Example

curl -X DELETE \
  "https://demo.apinizer.com/apiops/projects/MyProject/apiProxies/MyAPI/trafficLogSettings/production/methods/getUserById/connectors/ELASTICSEARCH_INDEX/" \
  -H "Authorization: Bearer YOUR_TOKEN"

Response

Success Response (200 OK)

{
  "status": "SUCCESS",
  "resultList": [
    {
      "environmentId": "env-123",
      "apiProxyId": "proxy-456",
      "logParamRequestFromClient": true,
      "logBodyRequestFromClient": true,
      "connectorSettingsMap": {
        "my-elasticsearch-connection": {
          "enabled": true,
          "logBodyRequestFromClient": true
        }
      }
    }
  ]
}

Error Response (400 Bad Request)

{
  "status": "FAILURE",
  "resultMessage": "Connection with name 'non-existent-connection' not found!"
}

Common Error Messages

MessageCause
Connection with name 'X' not found!Connection name does not exist in the project or admin project
Connection 'X' is not configured as a connector in the environment!Connection exists but is not added as a recipient in the target environment
environmentName value can not be empty!Missing environment name
Environment (X) is not found!Environment does not exist
Method (X) is not found in ApiProxy!Method name does not exist in the API proxy
Invalid connectorType: XInvalid EnumExecutableType value

Notes and Warnings

  • Connection Names: Use the connection name as the key in connectorSettingsMap, not the connection type or ID. The API resolves names to internal IDs automatically.
  • Environment Recipient: The connection must be added as a connector (recipient) in the target environment before it can be used here.
  • Inheritance: null fields in connector settings inherit from proxy-level defaults. Method-level overrides inherit from proxy-level connector settings.
  • Trailing Slash: All URLs must end with /. Without it, you will get a 404 error.
  • Deploy: PUT operations automatically deploy the changes to the environment.

Permissions

User must have API_MANAGEMENT + VIEW permission for GET endpoints and API_MANAGEMENT + MANAGE permission for PUT/DELETE endpoints.