{
  "name": "ExecuteFunctionIntegration",
  "plane": "internal",
  "terraformEligible": false,
  "protocol": {
    "kind": "cloudJson",
    "target": "CloudGateway.ExecuteFunctionIntegration",
    "service": "gateway"
  },
  "requestBody": "typed",
  "responseBody": "typed",
  "requestSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "additionalProperties": false,
    "definitions": {
      "InvocationMode": {
        "enum": [
          "REQUEST_RESPONSE",
          "EVENT"
        ],
        "type": "string"
      }
    },
    "properties": {
      "functionName": {
        "type": "string"
      },
      "invocationMode": {
        "$ref": "#/definitions/InvocationMode"
      },
      "payload": true
    },
    "required": [
      "functionName",
      "invocationMode",
      "payload"
    ],
    "title": "ExecuteFunctionIntegrationRequest",
    "type": "object"
  },
  "responseSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "properties": {
      "body": {
        "default": null
      },
      "statusCode": {
        "format": "uint16",
        "minimum": 0.0,
        "type": "integer"
      }
    },
    "required": [
      "statusCode"
    ],
    "title": "IntegrationExecutionResponse",
    "type": "object"
  }
}
