{
  "extension-key": "webm-gateway",
  "requiredKinds": [
    "Project",
    "API"
  ],
  "optionalKinds": [
    "CORS",
    "Quota",
    "Product",
    "Plan",
    "StagedPolicySequence",
    "Scope",
    "ValidateAPISpecification",
    "URISchemes",
    "Telemetry",
    "Properties",
    "LoadBalancer",
    "InvokeAWSLambda",
    "SetAuthorization",
    "Invoke",
    "GlobalPolicy",
    "InboundBulkHead",
    "SetMediaType",
    "InboundMessaging",
    "IAM",
    "AuthorizeUser",
    "SetContextVariable",
    "WebMethodsISService",
    "Log",
    "MonitorTraffic",
    "CacheServiceResult",
    "OutboundAlias",
    "OutboundAnonymous",
    "HTTPInvoke",
    "InvokeMessagingExtension",
    "DataMasking",
    "TransformRequest",
    "TransformResponse",
    "Route",
    "MessageConfig",
    "HTTPEndpoint",
    "MockEndpoint",
    "MockResponse",
    "ErrorProcessing",
    "Set",
    "RateLimitDef",
    "RateLimit"
  ],
  "policy-sequences": {
    "staged": [
      {
      "key":"transport",
      "label":"Transport",
      "assets":[
        {
          "kind": "Transport",
          "defautlVersion": "api.ibm.com/v1"
        },{
          "kind": "InboundBulkHead",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "InboundMessaging",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "SetMediaType",
          "defautlVersion": "api.ibm.com/v1"
        }

      ]
    },
    {
      "key":"identity_authorize",
      "label":"Identity and Authorize",
      "assets": [
        {
          "kind": "IdentifyAndAuthorize",
          "defautlVersion": "api.ibm.com/v1"
        },
         {
          "kind": "AuthorizeUser",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "SetContextVariable",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "WebMethodsISService",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "InvokeAWSLambdaFunction",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "InvokeMessagingExtension",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "HTTPEndpoint",
          "defautlVersion": "api.ibm.com/v1"
        }
      ]
    },
    {
      "key":"monitoring",
      "label":"Traffic Monitoring",
      "assets": [
        {
          "kind": "Log",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "RateLimiter",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "MonitorTraffic",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "CacheServiceResult",
          "defautlVersion": "api.ibm.com/v1"
        }
      ]
    },
        {
      "key":"routing",
      "label":"Routing",
      "assets": [
        {
          "kind": "Route",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "MessageConfig",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "SetContextVariable",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "WebMethodsISService",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "InvokeAWSLambdaFunction",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "InvokeMessagingExtension",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "HTTPEndpoint",
          "defautlVersion": "api.ibm.com/v1"
        }
      ]
    }, {
      "key":"reqProcessing",
      "label":"Request Processing",
      "assets": [
        {
          "kind": "TransformRequest",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "ValidateAPISpecification",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "DataMasking",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "SetContextVariable",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "WebMethodsISService",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "InvokeAWSLambdaFunction",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "InvokeMessagingExtension",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "HTTPEndpoint",
          "defautlVersion": "api.ibm.com/v1"
        }
      ]
    },{
      "key":"resProcessing",
      "label":"Response Processing",
      "assets": [
        {
          "kind": "TransformResponse",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "ValidateAPISpecification",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "DataMasking",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "CORS",
          "defautlVersion": "api.ibm.com/v1"
        }
      ]
    },{
      "key":"error_handlinf",
      "label":"Error Handling",
      "assets": [
        {
          "kind": "ErrorProcessing",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "DataMasking",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "SetContextVariable",
          "defautlVersion": "api.ibm.com/v1"
        },
        {
          "kind": "WebMethodsISService",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "InvokeAWSLambdaFunction",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "InvokeMessagingExtension",
          "defautlVersion": "api.ibm.com/v1"
        }, {
          "kind": "HTTPEndpoint",
          "defautlVersion": "api.ibm.com/v1"
        }
      ]
    }
  ]
    },
    "assetProperties":{
      "api.ibm.com_v1_HTTPEndpoint":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_Transport":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_InboundBulkHead":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_InboundMessaging":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_SetMediaType":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_IdentifyAndAuthorize":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_AuthorizeUser":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_SetContextVariable":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_WebMethodsISService":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_InvokeAWSLambdaFunction":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_InvokeMessagingExtension":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_Log":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_RateLimiter":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_MonitorTraffic":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_CacheServiceResult":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_Route":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_MessageConfig":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_TransformRequest":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_ValidateAPISpecification":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_DataMasking":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_TransformResponse":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_CORS":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      },
      "api.ibm.com_v1_ErrorProcessing":{
        "isDepricated": false,
        "isMandatory": false,
        "isCustomComponent": true
      }
  }
}
